es6循环方法

261 阅读1分钟

下面有个一个数组,利用es6循环方法得到想要的值

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

一、返回一个对象 name叫做'戴森' 的对象

  1. 使用forEach()方法

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

    2.使用find()方法:

    es6 循环之find 循环数组可以找到第一个符合条件的一项(原数组里面的成员),找到第一个之后立即终止循环

    let obj = arr.find(function(item,index){
         return item.price > 100
     })
     console.log(obj)
     
    

二、过滤出price > 1500的成员

1.forEach()方法

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

2.使用filter()方法:

es6循环的过滤方法 回调函数里面 return 一个条件 会返回一个符合条件的新数组 对原数组不会造成改变

 let arr2 = arr.filter(function(item,index){
        return item.price>1500
    })
    console.log(arr2)
    

三、找出出这份数组所有成员的name返回一个新数组['戴森','美的','格力']

1.使用forEach()方法

let arr2 = []
    arr.forEach(function(item,index){
        arr2.push(item.name)
    })
    console.log(arr2);
    

2.使用map()方法

map可以把数组里面某一项组合成一个新数组 对原数组不会造成改变

  let arr2 = arr.map(function(item,index){
        console.log(item,index)
        return item.price
    })
    console.log(arr2,arr);