1.foreach.用法详解
//forEach使用姿势一: var numbers = [1, 2, 3, 4, 5], sum = 0; numbers.forEach(function(item) { sum += item; }); console.log(sum); //结果:15 //forEach使用姿势二: var numbers = [1, 2, 3, 4, 5], sum = 0; function adder(item) { sum += item; } //直接调用adder函数,注意不加括号 numbers.forEach(adder); console.log(sum); //结果:15
注意:map和forEach区别是:map有返回值而且必须return返回一个数组才行,而forEach没有返回值可直接打印结果。
2.map()用法详解
注:map需要返回值,如果不给return,默认返回undefined,map返回的是一个新数组。
应用场景1:假定有一个数值数组A,将A数组的数值以双倍的形式放到B数组。
var numbers = [1, 2, 3]; var newNumbers1 = numbers.map(function(item) { return item * 2; }); console.log(newNumbers1); // 结果:[2,4,6]
应用场景2:假定有一个对象数组A,将A数组中对象某个属性的值存储在B数组中。
var cars = [ { model: "mini", price: 200 }, { model: "nio", price: 300 } ]; var prices = cars.map(function(item) { return item.price; }); console.log(prices); //结果:[200, 300]