数组数据
data = [
{name: "Z", detail: "zzz"},
{name: "W", detail: "wwww1"},
{name: "W", detail: "www2"},
{name: "W", detail: "www3"},
{name: "F", detail: "ff1"},
{name: "F", detail: "ff2"},
{name: "L", detail: "ll2"},
{name: "L", detail: "ll2"}
]
方法转换1
let obj = {};
data.forEach((item, index) => {
let { name } = item;
if (!obj[name]) {
obj[name] = {
name,
children: []
}
}
obj[name].children.push(item);
});
let dataPush = Object.values(obj); // 最终输出
方法转换2
let listArr = [];
data.forEach(function (val, index) {
for (var i = 0; i < listArr.length; i++) {
// 对比相同的字段key,相同放入对应的数组
if (listArr[i].name == val.name) {
listArr[i].features.push({
name: val.name,
detail: val.detail
});
return;
}
}
// 第一次对比没有参照,放入参照
listArr.push({
name: val.name,
detail: val.detail
});
});
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。