ホームページ >ウェブフロントエンド >jsチュートリアル >Reduce の使用に関するヒント (コード例)
この記事では、reduce の使用スキル (コード例) を紹介します。一定の参考価値があります。困っている友人は参考にしてください。お役に立てれば幸いです。
reduce
配列メソッドには 2 つのパラメータがあるコールバック関数 callback とInitialValue
コールバックには 4 つのパラメータがありますprev、next、index、arr
initialValue: オプションのパラメータ、最初としてprev of callback;
initialValue が渡された場合:
prev は最初はinitialValueであり、その後は戻り値になります。
next は配列の各項目です
index は配列の添字です
arr は元の配列です
initialValue が渡されない場合:
prev は配列の最初の項目です初回、それ以降は戻り値です。
next は配列の 2 番目の項目から始まる各項目です
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 },{})
以上がReduce の使用に関するヒント (コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。