5个常用的数组处理函数实例解析
数组是程序中常用的数据结构之一。在实际开发中,我们需要对数组进行增删改查等操作。JavaScript提供了多种处理数组的方法,本文将介绍5个常用的数组处理函数并给出实例解析。
1. Array.prototype.forEach()
forEach()方法用于对数组中的每个元素执行一次指定的操作。forEach()方法接收一个回调函数作为参数,这个回调函数接收3个参数:当前元素值,当前元素索引,整个数组本身。
例如:
let arr = [1, 2, 3, 4, 5];
arr.forEach(function(item, index, array) {
console.log(item, index, array);
});
输出结果:
1 0 [ 1, 2, 3, 4, 5 ] 2 1 [ 1, 2, 3, 4, 5 ] 3 2 [ 1, 2, 3, 4, 5 ] 4 3 [ 1, 2, 3, 4, 5 ] 5 4 [ 1, 2, 3, 4, 5 ]
2. Array.prototype.map()
map()方法用于创建一个新数组,其结果是执行回调函数中返回的每个元素的值。map()方法接收一个回调函数作为参数,这个回调函数接收3个参数:当前元素值,当前元素索引,整个数组本身。
例如:
let arr = [1, 2, 3, 4, 5];
let newArr = arr.map(function(item, index, array) {
return item * 2;
});
console.log(newArr);
输出结果:
[ 2, 4, 6, 8, 10 ]
3. Array.prototype.filter()
filter()方法用于创建一个新数组,其结果是回调函数中返回的所有元素值,满足条件的元素。filter()方法接收一个回调函数作为参数,这个回调函数接收3个参数:当前元素值,当前元素索引,整个数组本身。
例如:
let arr = [1, 2, 3, 4, 5];
let newArr = arr.filter(function(item, index, array) {
return item > 2;
});
console.log(newArr);
输出结果:
[ 3, 4, 5 ]
4. Array.prototype.reduce()
reduce()方法用于将数组中的所有元素一起执行回调函数中定义的操作,并返回一个值。reduce()方法接收一个回调函数作为参数,这个回调函数接收4个参数:累加器,当前元素值,当前元素索引,整个数组本身,并返回一个新的累加器值。
例如:
let arr = [1, 2, 3, 4, 5];
let sum = arr.reduce(function(prev, curr, index, array) {
return prev + curr;
});
console.log(sum);
输出结果:
15
5. Array.prototype.every()
every()方法用于判断数组中的所有元素是否都满足某个条件。every()方法接收一个回调函数作为参数,这个回调函数接收3个参数:当前元素值,当前元素索引,整个数组本身,并返回一个布尔值。
例如:
let arr1 = [1, 2, 3, 4, 5];
let arr2 = [1, 3, 5, 7, 9];
let isEven1 = arr1.every(function(item, index, array) {
return item % 2 === 0;
});
let isEven2 = arr2.every(function(item, index, array) {
return item % 2 === 0;
});
console.log(isEven1); // false
console.log(isEven2); // false
输出结果:
false false
本文介绍了5个常用的数组处理函数,并给出了实例解析。这些函数在实际开发中经常用到,需要熟练掌握。
