您好,登錄后才能下訂單哦!
小編給大家分享一下javascript中reduce如何使用,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
reduce
數組的方法,有兩個參數 回調函數callback 和 initialValue
回調有四個參數 prev、next、index、arr
initialValue:可選參數,作為callback第一次的prev;
如果傳了initialValue:
prev第一次為initialValue,之后為return的值。
next為數組的每一項
index為數組的下標
arr為原數組
如果沒傳initialValue:
prev第一次為數組的第一項,之后為return的值。
next為從數組的第二項開始的每一項
index、arr不受影響
下劃線轉駝峰
let str = "my_name_is_sxq"; let result = str.split('').reduce((p,n,i,arr)=>{ if(n=='_'){ arr[i+1] = arr[i+1].toUpperCase() return p } return p + n })
數組扁平化
// 二維轉一維 let arr = [1,2,3,[4,5],[6,7,[8,9]]]; let newarr = arr.reduce(function(prev,next){ return Array.isArray(next)?prev=prev.concat(...next):prev=prev.concat(next) },[])
數組轉對象
// 路由數組轉對象 let arr = [{path:'/',component:function(){}},{path:'/user',component:function(){}}] let result = arr.reduce((memo,current)=>{ memo[current.path] = current.component return memo },{})
看完了這篇文章,相信你對javascript中reduce如何使用有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。