zoukankan      html  css  js  c++  java
  • 哥哥写的例子(后台没有进行排序分组的时候,前台进行自己分组)

        //原始数据,后台没有进行排序的
    var rowData=[
            {data:2,date:'01',code:'cr_2',name:'桥吊2'},
            {data:1,date:'03',code:'cr_1',name:'桥吊1'},
            {data:4,date:'06',code:'cr_1',name:'桥吊3'},
            {data:111,date:'09',code:'cr_1',name:'桥吊1'},
            {data:212,date:'02',code:'cr_2',name:'桥吊2'},
            {data:222,date:'03',code:'cr_2',name:'桥吊2'},
            {data:11,date:'07',code:'cr_1',name:'桥吊1'}
        ];
        //需要的数据
        var result1=[
            {name:"cr_1",data:[1,4,11,111]},
            {name:"cr_2",data:[2,212,222]}
        ];
        //=========================================================
        //1.数组添加元素
        var newAry = [];
        for(var i=0;i<rowData.length;i++){
            //1.判断数组中是否包含该元素,不包含则添加,包含则追加子元素
            var result = fun_IsExists(newAry,rowData[i].code);
            if(result.flag){
                newAry[result.index].data.push(rowData[i].data);
            }else{
                newAry.push({
                    name:rowData[i].code,
                    data:[rowData[i].data]
                });
            }
            newAry.push();
        }
        
        //debugger;
        //2.对象数组排序(将cr_1根据名字进行排序)
        newAry.sort(compare("name")); 
        //判断是否存在
        function fun_IsExists(newAry,name){
            var flag = false;
            var index = -1;
            for(var i=0;i<newAry.length;i++){
                if(newAry[i].name == name){
                    index = i;
                    flag = true;
                    break;
                }
            }
            return {
                flag:flag,
                index:index
            };
        }
        //排序
        function compare(prop) {
           return function (obj1, obj2) {
                var val1 = obj1[prop];
                var val2 = obj2[prop];if (val1 < val2) {
                    return -1;
                } else if (val1 > val2) {
                    return 1;
                } else {
                    return 0;
                }            
            }
        }
  • 相关阅读:
    矩形法求积分sin cos exp
    约瑟夫环问题
    KMP算法详解
    找出float型数组的最大值和最小值,分别和第一个和最后一个元素互换
    二重指针应用
    C++学习笔记(一)
    Line学习笔记
    node2vec学习笔记
    deepwalk学习笔记
    如何保证消息不被重复消费?(如何保证消息消费时的幂等性)
  • 原文地址:https://www.cnblogs.com/pengfei25/p/7841436.html
Copyright © 2011-2022 走看看