1.map()
1)map 方法可以方便的迭代数组,map 方法会迭代数组中的每一个元素,并根据回调函数来处理每一个元素,最后返回一个新数组。
2)注意,这个方法不会改变原始数组。(回调函数也可以支持多个参数,譬如:元素的索引index、原始数组arr。)
var oldArray = [1,2,3,4,5];
var newArray = oldArray.map(function(val) {
return val+3;
});
2.reduce()
1)reduce 用来迭代一个数组,并且把它累积到一个值中。
2)使用 reduce 方法时,你要传入一个回调函数,这个回调函数的参数是一个 累加器)。
3)reduce 方法有一个可选的第二参数,它可以被用来设置累加器的初始值。如果没有在这定义初始值,那么初始值将变成数组中的第一项,而 currentVal 将从数组的第二项开始。
如:用 reduce 方法来让 array 中的所有值相加,并且把结果赋值给 singleVal 。
var array = [4,5,6,7,8];
var singleVal = 0;
singleVal = array.reduce(function(total,val){
return total+ val;
},0);
});
3.filter()
1)filter 方法用来迭代一个数组,并且按给出的条件过滤出符合的元素。
2)filter 方法传入一个回调函数,这个回调函数会携带一个参数,参数为当前迭代的项(我们叫它 val )。
3)回调函数返回 true 的项会保留在数组中,返回 false 的项会被过滤出数组。
4)filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
注意: filter() 不会对空数组进行检测。
注意: filter() 不会改变原始数组。
网友评论