本文摘自PHP中文网,作者不言,侵删。
本篇文章给大家带来的内容是关于reduce的用法技巧(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
reduce
数组的方法,有两个参数 回调函数callback 和 initialValue
回调有四个参数 prev、next、index、arr
initialValue:可选参数,作为callback第一次的prev;
如果传了initialValue:
prev第一次为initialValue,之后为return的值。
next为数组的每一项
index为数组的下标
arr为原数组
如果没传initialValue:
prev第一次为数组的第一项,之后为return的值。
next为从数组的第二项开始的每一项
index、arr不受影响
下划线转驼峰
1 2 3 4 5 6 7 8 | 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
})
|
数组扁平化
1 2 3 4 5 | 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)
},[])
|
数组转对象
1 2 3 4 5 6 | let arr = [{path: '/' ,component: function (){}},{path: '/user' ,component: function (){}}]
let result = arr.reduce((memo,current)=>{
memo[current.path] = current.component
return memo
},{})
|
以上就是reduce的用法技巧(代码示例)的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
javascript怎么删除数组的指定元素
javascript怎么清除缓存
javascript如何判断字符串中是否包含某个字符串
javascript的$是啥
javascript中时间怎么转时间戳
移动端h5页面实现生成图片的代码
javascript用什么方法触发按钮的被点击事件
data-*与js的交互
对tap事件和tap点透原理的分析
javascript如何判断是否为整数
更多相关阅读请进入《javascript》频道 >>
人民邮电出版社
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者
转载请注明出处:木庄网络博客 » reduce的用法技巧(代码示例)