js 对json中字段值相同的对象进行分类
json数据中,createTime有2个日期,通过处理后,将一样的值的2个对象合并成一个
{
"code": "0",
"msg": "成功",
"date": null,
"data": [
{
"pubmsName": "1",
"createTime": "2021-04-14",
"suser": "admin"
},
{
"pubmsName": "2",
"createTime": "2021-04-14",
"suser": "test"
},
{
"pubmsName": "3",
"createTime": "2021-04-13",
"suser": "aadmin"
}
]
}
处理函数:
var arr = res["data"];
function f(arr) {
var mp = {};
var ret = [];
arr.forEach((item) => {
if (typeof mp[item.createTime] === "number") {
ret[mp[item.createTime]].push(item);
} else {
mp[item.createTime] = ret.length;
ret.push([item]);
}
});
return ret;
}
this.cData = []
for (var i = 0; i < f(arr).length; i++) {
this.cData.push({ date: f(arr)[i][0]["createTime"], data: f(arr)[i] })
}