本篇文章给大家带来的内容是关于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
},{}) 以上就是reduce的用法技巧(代码示例)的详细内容,更多请关注模板之家(www.mb5.com.cn)其它相关文章! |