1-介紹:
(1)reduce()
(2)reduceRight()
兩個方法作用都差不多,只是遍歷數組的方向不一樣;
reduce從數組的第一項遍歷到最後一項,
reduceRight則是從數組的最後一項遍歷到第一項;
所以只介紹reduce()方法的用法,reduceRight的用法一樣。
2-參數介紹:
reduce(function, theInitialValue);
(1)function一個在數組的每一項上調用的函數
(2)theInitialValue歸併的初始值
3-具體用法:
(1)function參數介紹
<script>
var array = [1, 2, 3, 4, 5];
/*
function(pre, cur, index, array)
pre: 指的是相對於當前項的前一項,如果是數組的第一項
那麼pre的值是0(我用的瀏覽器是谷歌瀏覽器)
cur: 指的是當前項
index: 指的是當前項的index,也就是當前項在數組中的位置
array: 指的是調用這個方法的數組
*/
var reduceSum = array.reduce(function(pre, cur, index, array){
return pre + cur;
}, 0);
/*
顯示的結果是15
*/
alert(reduceSum);
var reduceRightSum = array.reduceRight(function(pre, cur, index, array){
return pre + cur;
}, 100);
/*
顯示的結果是115
*/
alert(reduceRightSum);
</script>
另外支持這兩個歸併函數的瀏覽器有IE 9+,Firefox 3+, Safari 4+, Opera 10.5和Chrome