// 后端给的数据没写真实的,是我按照真实的模拟的。
const data = [{
name: '123',
point_title: "国际"
},
{
name: '123',
point_title: "嘻嘻"
},
{
name: '123',
point_title: "哈哈"
},
{
name: '456',
point_title: "哥哥"
},
{
name: '456',
point_title: "妹妹"
}
];
// 要变成这种格式
[
{name: '123', point_title: "国际 嘻嘻 哈哈" },
{name: '456', point_title: "哥哥 妹妹" }
]
// 使用reduce方法来组合对象
const transformedData = res.data.reduce((acc, current) => {
// 查找累加器中是否已经存在相同name的对象
const existingEntry = acc.find(item => item.name === current.name);
if (existingEntry) {
// 如果存在,将point_title添加到该对象的point_title中
existingEntry.point_title += ` ${current.point_title}`; // 添加空格分隔
} else {
// 如果不存在,则添加新的对象到累加器
acc.push({
...current
});
}
return acc;
}, []); // 初始累加器为空数组
console.log(transformedData);
// 控制台打印的数据
(2) [{…}, {…}]
0: {name: "123", point_title: "国际 嘻嘻 哈哈"}
1: {name: "456", point_title: "哥哥 妹妹"}
length: 2
nv_length: (...)
__proto__: Array(0)
js使用reduce方法去重,组合对象
最新推荐文章于 2024-07-04 14:23:30 发布