zoukankan      html  css  js  c++  java
  • 关于reduce的使用方法

        var rowData=[
            {data:4,date:'06',code:'cr_3',name:'桥吊3'},
            {data:1,date:'03',code:'cr_1',name:'桥吊1'},
            {data:2,date:'01',code:'cr_2',name:'桥吊2'},
            {data:1,date:'07',code:'cr_1',name:'桥吊1'},
            {data:2,date:'02',code:'cr_2',name:'桥吊2'},
            {data:1,date:'09',code:'cr_1',name:'桥吊1'},
            {data:2,date:'03',code:'cr_2',name:'桥吊2'}
        ];
        var arr=rowData.reduce(function(o,v,i){
            if(o[v.code]){
                o[v.code].push(v.data);
            }else{
                o[v.code]=[v.data];
            }
            return o;
        },{})
        console.log(arr);

    返回的结果

        {
            "cr_1":[1,1,1],
            "cr_2":[2,2,2],
            "cr_4":[4]
        }

    例子:得到字符串数据  “ str1/str2/str3”

    需要获取用户选中数的id,拼接成字符串的格式传到后台,原始的做法是在后面加一个字符串,但是这样在最后的时候就需要剪切一次,现在换成在前面拼接“\”(不用转义有时候会报错)     

    var data=obj;    
    var nodes=treeObj.getCheckedNodes(true);//获取ztree选中的树
    data.groupTreeCode=nodes.reduce(function(o,v,i){
        if(!!0){o+="\"}
        o+=v.original_id;
        return o;
    })

    如下:只是获取选中的叶子节点的id

    var data=obj;    
    var nodes=treeObj.getCheckedNodes(true);//获取ztree选中的树
    data.groupTreeCode=nodes.reduce(function(o,v,i){
        if(!!o){o+="\"}
        o+=v.original_id;
        return o;
    })

    简单替换for循环

    var rowData=[{id:11,text:"千瓦时1"},{id:22,text:"千瓦时2"},{id:33,text:"千瓦时3"}]
    var obj=rowData.reduce(function(o,v,i){
        debugger;
        o[v.id]=v.text;
        return o;
    },{})
    console.log(obj);//{11,"千瓦时1",22,"千瓦时2",33,"千瓦时3"}
  • 相关阅读:
    Pytest中参数化之CSV文件实战
    Pytest中参数化之Yaml文件实战
    Pytest中参数化之JSON文件实战
    Pytest中参数化详解
    Pytest搜索规则/命令详解/跳过测试和预期失败测试
    Http协议介绍
    MySQL视图/触发器/事务/存储过程/函数/流程控制/索引
    pymysql模块使用和简单sql注入及解决方法
    MySQL连接软件Navicat学习
    对文件操作的讲解
  • 原文地址:https://www.cnblogs.com/pengfei25/p/7652381.html
Copyright © 2011-2022 走看看