木森林林常识库

木森林林常识库
专业信息资源分享平台

JavaScript数组的归并方法

ECMAScript5新增了两个归并数组的方法:reduce()和reduceRight()。这两个方法都会迭代数组的所有项,然后构建一个最终返回的值。其中,reduce()方法从数组的第一项开始,逐个遍历到最后。而reduceRight()方法则从数组的最后一项开始,向前遍历到第一项。

这两个方法都接收两个参数:在每一项上调用的函数和(可选的)作为归并基础的初始值。

传入这两个方法的调用函数接收4个参数:前一个值、当前值、项的索引和数组对象。这个函数返回的任何值都会作为第一个参数自动传给下一个项。

第一次迭代发生在数组的第二项上,因此第一个参数是数组的第一项,第二个参数就是数组的第二项。

var values = [1,2,3,4,5];
var sum = values.reduce(function(prev, cur, index, array){
	return prev + cur;
});
console.log(sum);	//15

支持这些迭代方法的浏览器有IE9+、Firefox3+、Safari4+、Opera10.5+和Chrome。

分享:

评论