JavaScript 的map和reduce,巧妙的使用能使代码看起来很简介。而且这种方式自己不用写一个for循环来处理数组的每一个值。
1 map方法
Map() 方法返回一个由原数组中的每个元素调用一个指定方法后的返回值组成的新的数组。
var valu = ['a','b','c'];
valu = valu.map(function(item){
return item + '1'
})
console.log(valu);
输出结果如下:
["a1", "b1", "c1"]
2 reduce 方法
reduce 方法是让数组的前项和后项做计算,并累计最终的值。
var valu = [1,2,3];
valu = valu.reduce(function(prev,next){
console.log("prev = " + prev);
console.log("next = " + next);
return prev + next;
});
输出结果如图所示:
从输出的结果可以看出 prev 是计算的和,而next是下一元素的值。reduce函数还有第二个参数,第二个参数是设置prev的初始值,当有值的时候,prev的初始值就是第二个参数的值,当没有的时候是数组元素的第一个元素的值。
仅仅是学习笔记而已。