百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>JS教程> reduce的用途技巧(代码示例)
分享文章到:

reduce的用途技巧(代码示例)

发布时间:09/01 来源:未知 浏览: 关键词:

本篇文章给大家带来的内容是关于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的用途技巧(代码示例)的具体内容,更多请关注百分百源码网其它相关文章!

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有151人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板