• reduce基本用法,js实现分组


    1.reduce用法:

    /***
    * @desc-转换数组
    * @param {arr}  
    ***/
    let arr = ['1','2','3','4','5'];
    temparr = arr.reduce((result,item,index)=>{
         result.push(item == 1? '周一' : item == 2 ? '周二' : item == 3? '周三' : item == 4 ? '周四' : '周五');
         return result;
    },[]);
    console.log(temparr);
    /***
     *@desc-分组
     * @param {arr}  
    ***/
    let arr = [
       {
           "activityAttendRegionId":"244860186500665344",
           "activityAttendRuleId":"",
           "activityId":"",
           "createdTime":null,
           "id":null,
           "multipleIntegral":1.1,
           "regionId":"7132b2aeb0964d52b8c2c8421f27fe8c",
           "regionName":"汽油的",
           "stationId":"10010100001",
           "stationName":"成都市天府广场加油站",
           "type":"2"
        },
        {
              "activityAttendRegionId":"244860186500665345",
              "activityAttendRuleId":"",
              "activityId":"",
              "createdTime":null,
              "id":null,
             "multipleIntegral":1.2,
              "regionId":"dbeb0f343fcc4e53aa20af7a06b44a2c",
              "regionName":"固额赠送",
             "stationId":"10010100001",
             "stationName":"成都市天府广场加油站",
             "type":"2"
         },
         {
             "activityAttendRegionId":"244860186500665346",
             "activityAttendRuleId":"",
             "activityId":"",
             "createdTime":null,
             "id":null,
             "multipleIntegral":1.1,
             "regionId":"e9abee2cebf443c4b3b7ae996283b091",
             "regionName":"汽油1",
             "stationId":"10010100002",
             "stationName":"成都市锦江区加油站",
             "type":"2"
         },
         {
            "activityAttendRegionId":"244860186500665347",
            "activityAttendRuleId":"",
            "activityId":"",
            "createdTime":null,
            "id":null,
            "multipleIntegral":1.2,
            "regionId":"37958946386f48d5979da6393aa2dc29",
            "regionName":"比例",
            "stationId":"10010100002",
            "stationName":"成都市锦江区加油站",
            "type":"2"
         },
         {
            "activityAttendRegionId":"244860186546802688",
            "activityAttendRuleId":"",
            "activityId":"",
            "createdTime":null,
            "id":null,
            "multipleIntegral":1.1,
            "regionId":"3377694414134fd685f16f4c4f0ae7fe",
           "regionName":"222",
           "stationId":"10010100005",
           "stationName":"现代通卡有限公司",
           "type":"2"
        }
     ];
    function gropArr(arr){
       const s = new Set(); //实例化对象
       arr.forEach(item => s.add(item.stationId)); //添加值(Set可以去掉重复数据)
       let newdata = Array.from({ length: s.size }, () => []); //创建指定长度数组并添值
           arr.forEach(item => {
               let index = [...s].indexOf(item.stationId) //找到指定下标
               newdata[index].push(item);
           });
           return newdata;
     }
     console.log(gropArr(arr));
  • 相关阅读:
    前端要懂的视频知识DASH协议(建议收藏)
    HTML5 video标签播放视频下载原理
    dash视频服务器本地搭建 (初探)
    纵论WebAssembly,JS在性能逆境下召唤强援
    详解volatile在C++中的作用
    C++ lambda表达式
    Java 从入门到进阶之路(十七)
    Java 从入门到进阶之路(十六)
    Java 从入门到进阶之路(十五)
    Java 从入门到进阶之路(十四)
  • 原文地址:https://www.cnblogs.com/tiantianleyuan123/p/13396735.html
Copyright © 2020-2023  润新知