es6循环:find循环 filter循环 map循环

166 阅读1分钟

一:find循环

<script>
    let arr = [{
        name:'戴森',
        price:2000
    },{
        name:'美的',
        price:1000
    },{
        name:'格力',
        price:3000
    }]

    /* es6 循环之find 循环数组可以找到第一个符合条件的一项(原数组里面的成员) */
    /* 找到第一个之后立即终止循环 */
    // let obj = arr.find(function(item,index){
    //     console.log(item,index)
    //     return item.price > 100
    // })
    // console.log(obj)

    // let obj = {};
    // arr.forEach(function(item){
    //     if(item.name=='戴森'){
    //         obj = item;
    //     }
    // })
    // console.log(obj);

    /* 返回一个对象 name叫做'戴森' 的对象
    {
        name:'戴森',
        price:2000
    }
     */

二:filter

    /* 过滤 price > 1500 */
    /* es6循环的过滤方法 回调函数里面 return 一个条件
    会返回一个符合条件的新数组  对原数组不会造成改变*/
    // let arr2 = arr.filter(function(item,index){
    //     return item.price>1500
    // })
    // console.log(arr2,arr)

    // let arr2 = []
    // arr.forEach(function(item,index){
    //     if(item.price>1500){
    //         arr2.push(item)
    //     }
    // })
    // console.log(arr2)

    /* ['戴森','美的','格力'] */
    // let arr2 = []
    // arr.forEach(function(item,index){
    //     arr2.push(item.name)
    // })
     // console.log(arr2);
    

三:map

    /* map循环 */
    /* map可以把数组里面某一项组合成一个新数组 
    对原数组不会造成改变*/
    // let arr2 = arr.map(function(item,index){
    //     console.log(item,index)
    //     return item.price
    // })
    // console.log(arr2,arr);
</script>