Array数组对象中的forEach、map、filter及reduce详析
对于开发者而言,Array是非常常用的数据类型之一。在Array中,有四个方法:forEach、map、filter及reduce。下面我们将逐一深入剖析它们的用法及使用场景。
forEach
forEach方法的作用是:用于遍历数组中的每一个元素,并对其进行操作。语法如下:
array.forEach(callback(currentValue [, index [, array]])[, thisArg])
参数说明:
callback
:为数组中每个元素执行的回调函数currentValue
:数组中正在处理的元素index
:当前元素在数组中的下标array
:数组本身thisArg
:当执行回调函数时,使用的this
值。可选参数。
示例说明:
var numArr = [1, 2, 3, 4, 5];
numArr.forEach(function (num, index, arr) {
console.log('第', index + 1, '个元素是', num, ',所属数组为', arr);
});
输出结果:
第 1 个元素是 1 ,所属数组为 [ 1, 2, 3, 4, 5 ]
第 2 个元素是 2 ,所属数组为 [ 1, 2, 3, 4, 5 ]
第 3 个元素是 3 ,所属数组为 [ 1, 2, 3, 4, 5 ]
第 4 个元素是 4 ,所属数组为 [ 1, 2, 3, 4, 5 ]
第 5 个元素是 5 ,所属数组为 [ 1, 2, 3, 4, 5 ]
map
map方法的作用是:将数组中的元素按照一定的规则转换,并生成一个新的数组。语法如下:
array.map(callback(currentValue [, index [, array]])[, thisArg])
参数说明:
callback
:转换数组中每个元素的回调函数currentValue
:数组中正在处理的元素index
:当前元素在数组中的下标array
:数组本身thisArg
:当执行回调函数时,使用的this
值。可选参数。
示例说明:
var numArr = [1, 2, 3, 4, 5];
var strsArr = numArr.map(function (num) {
return '数字' + num;
});
console.log(strsArr);
输出结果:
[ '数字1', '数字2', '数字3', '数字4', '数字5' ]
filter
filter方法的作用是:从数组中筛选出符合条件的元素并生成一个新的数组。语法如下:
array.filter(callback(currentValue [, index [, array]])[, thisArg])
参数说明:
callback
:对数组中每个元素进行测试的回调函数currentValue
:数组中正在处理的元素index
:当前元素在数组中的下标array
:数组本身thisArg
:当执行回调函数时,使用的this
值。可选参数。
示例说明:
var numArr = [1, 2, 3, 4, 5];
var oddNums = numArr.filter(function (num) {
return num % 2 !== 0;
});
console.log(oddNums);
输出结果:
[ 1, 3, 5 ]
reduce
reduce方法的作用是:对数组中的元素进行逐个操作,并将它们汇总成一个值。语法如下:
array.reduce(callback(accumulator, currentValue [, index [, array]])[, initialValue])
参数说明:
callback
:作用在数组中每个元素上的回调函数accumulator
:回调函数的返回值,在下一次调用中作为上一次回调函数的结果使用currentValue
:数组中正在处理的元素index
:当前元素在数组中的下标array
:数组本身initialValue
:用作第一次调用callback函数时的第一个参数的值。可选。
示例说明:
var numArr = [1, 2, 3, 4, 5];
var sum = numArr.reduce(function (prev, curr) {
return prev + curr;
});
console.log(sum); // 15
以上就是Array数组对象中的forEach、map、filter及reduce详析
的完整攻略,希望对大家有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Array数组对象中的forEach、map、filter及reduce详析 - Python技术站