入参样式
var oldObj = [
{ headname: "颜色", detailname: "红色" },
{ headname: "颜色", detailname: "黑色" },
{ headname: "嘻嘻嘻", detailname: "" },
{ headname: "科目", detailname: "数学" },
{ headname: "科目", detailname: "语文" },
{ headname: "爱好", detailname: "游泳" },
{ headname: "爱好", detailname: "唱歌" },
];
结果数据
newObj = {
嘻嘻嘻: ['嘻嘻嘻'],爱好: ["游泳", "唱歌"],
科目: ["数学", "语文"],
颜色: ["红色", "黑色"],
};
实现代码:
var newObj = {};
for (var i = 0; i < oldObj.length; i++) {
if (oldObj[i].detailname == "") {
oldObj[i].detailname = oldObj[i].headname;
}
if (newObj[oldObj[i].headname]) {
newObj[oldObj[i].headname].push(oldObj[i].detailname);
} else if (!newObj[oldObj[i].headname]) {
newObj[oldObj[i].headname] = new Array();
newObj[oldObj[i].headname].push(oldObj[i].detailname);
}
}