在工作中會經常有計算數量總和的功能,在以前實現這個功能的時候,會遍歷陣列裡面的數量,一遍一遍的迴圈計算,例如,想要快速計算陣列[1,2,3,4,5]
,以前會這樣寫:
var numarray =[1
,2,3
,4,5
];var sum =0;
for(
var i =
0; i < numarray.length; i++
) console.
log(sum)
;//15
但是現在,只需要用一行**就能實現這個功能,這個功能我們需要用到這個方法redyce()
,相容性還不差,能相容到ie9
滿足到大部分的工作場景,但是如果需要更低的瀏覽器相容,就只能使用上面的那種老方法了。
let numarray =[1
,2,3
,4,5
];numarray.
reduce
((accumulator, currentvalue)
=>
number
(accumulator)
+number
(currentvalue));
//15
但是如果當瀏覽器不相容箭頭函式,那我們可以使用下面的這種方法?
let numarray =[1
,2,3
,4,5
];numarray.
reduce
(function
(accumulator, currentvalue),0
);//15
這裡的這個方法最後的0
意思是第一次呼叫函式時的第乙個引數值也就是初始值,如果沒有提供該值,則會直接使用陣列用的第乙個元素,在乙個沒有初始值的空陣列上呼叫reduce
,則會直接報錯,例如?。
.
reduce
(function
(accumulator, currentvalue));
//uncaught typeerror: reduce of empty array with no initial value
更多詳細資訊可以檢視這裡:reduce()
C語言如何計算陣列的長度
原創i.czy 1 借助sizeof 函式 include int main int length 0 計算陣列中資料長度 所有資料的位元組數除以乙個資料的位元組數即為資料的個數 length sizeof arr sizeof int printf 陣列的長度為 d n length return...
HashMap中如何計算陣列索引下標?
對於key的hashcode做hash操作,無符號右移16位然後做異或運算。還有平方取中法,偽隨機數法和取餘數法。這三種效率都比較低。而無符號右移16位異或運算效率是最高的。集合中的初始化容量 必須是二的n次冪 預設的初始容量是16 1 4相當於1 2的4次方 1 16 static final i...
統計陣列長度函式php php如何計算陣列長度?
php如何計算陣列長度?在php中,可以使用count 或sizeof函式來獲取陣列中存在的元素的總長度或總數,計算陣列長度。方法一 count 函式 首先我們建立了乙個陣列,如下 array array abc def ghi klm 然後我們使用count函式來列印出此陣列中的元素數量。prin...