2020年11月14日 学习笔记
forEach,reduce,map,filter 函数
forEach 函数
遍历数组,使得其中每一项执行某个操作
let arr = [1,2,3,4,5];
arr.forEach((item,index)=> {
console.log(item);
})
reduce 函数
让数组的前后项做某种计算,并累计最终值
array.reduce(function(total, currentValue, currentIndex, arr), initialValue)
- initialValue: 传递给数组的初始值,非必填;
- total:累计器累计回调的返回值; 它是上一次调用回调时返回的累积值
- currentValue:数组中正在处理的元素
- currentIndex:数组中正在处理的当前元素的索引,非必填
- arr:调用reduce()的数组,非必填
var newArr = [15.5, 2.3, 1.1, 4.7].reduce(function(total,num){
return total + Math.round(num);//对数组元素进行四舍五入并计算总和
}, 0);
console.log(newArr);//24
map 函数
对数组的每一项进行同一个操作,将得到值组成一个新数组
let arr = [1,2,3,4,5];
let newArray = arr.map((item,index)=> {
return item * 2
});
newArray // [2, 4, 6, 8, 10]
arr // [1,2,3,4,5]
filter 函数
返回符合条件的数组,不改写原数组
let array = [1,2,3,4].filter((item,index)=>{
return item > 2;
})
console.log(array); // [3,4]