首頁  >  文章  >  web前端  >  js數組中的元素如何實現累加效果

js數組中的元素如何實現累加效果

醉折花枝作酒筹
醉折花枝作酒筹原創
2021-08-12 11:26:074419瀏覽

上一篇文章中我們了解了創建一個具有可變數量的數組的方法,請看《js如何創建一個具有可變數量的數組》。這次我們來了解陣列中的元素實現累加效果的方法,有需要的可以參考參考。

首先我們來看一個小例子。

我們現在有這樣一個問題,已知,我們有一個包含1,2,3,4這四個元素的數組,現在我們想知道這個數組中元素的總和是多少,該如何計算呢?如果加上元素two呢?這總和還是一樣的嗎?

<script>
var arr = new Array(7); 
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
arr[3] = 4;
console.log(arr);
const reducer = (accumulator, currentValue) => accumulator + currentValue;
console.log(arr.reduce(reducer));

var nums = new Array(7); 
nums[0] = 1;
nums[1] = 2;
nums[2] = 3;
nums[3] = 4;
nums[4] = "two";
console.log(nums);
console.log(nums.reduce(reducer));
</script>

這個小例子的結果是

js數組中的元素如何實現累加效果

#我們可以結合題目觀察結果,1,2,3,4四個元素累加起來的結果是10,而1,2,3,4和two這五個元素累加的結果是10two。這表明,在這個方法中,如果出現英文的話,英文是不會被過濾的,會直接與數字進行運算。

了解這麼多之後,我們就去具體看看這個方法吧。

reduce() 方法對數組中的每個元素執行一個由我們提供的reducer函數(升序執行),將其結果匯總為單一傳回值。

我們來看看這個方法的語法吧。

数组名称.reduce(执行的函数(累计器的返回值,正在处理的元素,当前元素索引,数组,第一次调用函数时的值)

reduce為數組中的每一個元素依序執行callback函數,不包括數組中被刪除或從未被賦值的元素,接受四個參數:

  • accumulator 累計器

  • currentValue 目前值

  • currentIndex 目前索引

  • array 陣列

注意:如果沒有提供第一次呼叫函數時的值,reduce 會從索引1的地方開始執行callback 方法,跳過第一個索引。如果提供第一次呼叫函數時的值,從索引0開始。

就說到這裡了,有需要的可以看:javascript基礎教學

#

以上是js數組中的元素如何實現累加效果的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn