陣列reduce 方法

2021-10-14 11:12:55 字數 692 閱讀 6740

reduce()函式接收的引數和map()類似,乙個函式f,乙個list,但行為和map()不同,reduce()傳入的函式f必須接收兩個引數,reduce()對list的每個元素反覆呼叫函式f,並返回最終結果值。

例子

def f(x, y):

return x + y

reduce(f, [1, 3, 5, 7, 9]) # 返回結果為25

reduce()還可以接收第3個可選引數,作為計算的初始值。

也就是說

第乙個引數是函式 第二個引數或者第三個引數都是第乙個函式的引數 ,

計算的時候要給個初始值0

如果把初始值設定為100

reduce(f, [1, 3, 5, 7, 9], 100) # 返回結果為125

// 先使用 filter 方法,從購物車中過濾器已勾選的商品

// 再使用 reduce 方法,將已勾選的商品總數量進行累加

// reduce() 的返回值就是已勾選的商品的總數量

return state.cart.filter(x => x.goods_state).reduce((total, item) => total += item.goods_count, 0)

陣列 reduce 方法

reduce 是接受乙個函式作為累加器,陣列中每乙個值從左到右計算成乙個值 arr.reduce callback,initialvaluce 1.previousvalue 上一次呼叫返回的值或者是提供的初始值 initialvalue 2.currentvalue 陣列當前被處理的元素 3.in...

陣列的reduce方法

arr.reduce callback accumulator,currentvalue,index,array initialvalue 如果沒有initialvalue,預設陣列的第一項為initialvalue,第一次的currentvalue為陣列的第二項 沒有提供initialvalue ...

陣列(Array)的常用方法(reduce)

reduce 陣列通過此方法,可以實現將每一項疊加稱為一項。使用 sum arr.reduce fun,start 其中,fun為乙個方法,接收四個引數,分別為 cur 當前項的值 index 當前項的index arr 原陣列 其中,start為疊加計算定義型別,並且為初始值,此值可以根據實際情況...