//原始数据,后台没有进行排序的
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
;
}
}
}
转载于:https://www.cnblogs.com/pengfei25/p/7841436.html
相关资源:万能后台管理模板javaweb