// 数组中的map 和reduce方法
// map() :接收一个函数,将原数组中的所有元素用这个函数处理后放入新数组中返回
let arr = [1, 2, 3];
// 写法1 箭头函数
arr = arr.map((item) => {
return item * 2
});
console.log(arr); // [2,4,6]
// 写法2 箭头函数
arr = arr.map(item => item * 2);
console.log(arr); // [4,8.12]
// reduce() w为数组中的每一个元素执行回调函数,不包括数组中被删除或从未被赋值的元素
//arr.reduce(callback,[initialValue])
// 1、previousValue (上一次调用回调返回的值,或者是提供的初始值(initialValue))
// 2、currentValue (数组中当前被处理的元素)
// 3、index (当前元素在数组中的索引)
// 4、array (调用 reduce 的数组)*/
let arr2 = [1, 2, 3];
let result = arr2.reduce((a, b) => {
console.log("上一次被处理后的值 : " + a);
console.log("当前被处理的值 : " + b);
return a + b;
});
console.log(result) // 6
// 100 表示第一次被处理的初始值
let result2 = arr2.reduce((a, b) => {
console.log("上一次被处理后的值 : " + a);
console.log("当前被处理的值 : " + b);
return a + b;
}, 100);
console.log(result2) // 106