这是一个对象的输入数组
var array= [
{ name : "c", arr: "d" },
{ name : "a", arr: "b" },
{ name : "c", arr: "e" },
{ name : "a", arr: "b" },
{ name : "c", arr: "d" }
];
结果应该是这样的
var result =[
{ name : "c", arr: "d,e" },
{ name : "a", arr: "b" }
]
使用reduce
,一个Set
来存储唯一的字母,然后将它们与
map
连接在一起,最后:
var array= [
{ name : "c", arr: "d" },
{ name : "a", arr: "b" },
{ name : "c", arr: "e" },
{ name : "a", arr: "b" },
{ name : "c", arr: "d" }
];
const res = Object.values(array.reduce((a, { name, arr }) => {
a[name] = a[name] || { name, arr: new Set() };
a[name].arr.add(arr);
return a;
}, {})).map(({ name, arr }) => ({ name, arr: [...arr].join(",")}));
console.log(res);
.as-console-wrapper { max-height: 100% !important; top: auto; }
我有一个数组: 我想将具有相同“ID”的对象组合成数组中的相同对象。它们的共同密钥也应该组合在一起(例如:'名字'、'电子邮件')。有人能建议做这件事的最好方法吗?使用ES6或Lodash
我有两张阵列图。 有没有办法用流来完成这个任务? 或者我必须通过映射迭代?
问题内容: 尝试查看是否有任何JavaScript库功能可以合并两个json对象的特定键的值 使用$ .extend和$ .merge给出以下结果 我正在寻找的是 问题答案: 您想深入扩展
我有一个对象数组,希望删除所有具有特定键值的对象。 该数组如下所示:
问题内容: 什么是重组的最佳方式进入?我需要将所有值键(无论是否为数组)合并到共享相同名称键的对象中 是的,我可以编写无限循环和介于两者之间的多个数组,但是是否有一个简单的快捷方式?谢谢! 问题答案: 这是一个选择:
本文向大家介绍php中有关合并某一字段键值相同的数组合并的改进,包括了php中有关合并某一字段键值相同的数组合并的改进的使用技巧和注意事项,需要的朋友参考一下 下面是实现代码: