gpt4 book ai didi

JavaScript 对象数组包含相同的数组数据

转载 作者:数据小太阳 更新时间:2023-10-29 04:26:01 25 4
gpt4 key购买 nike

我尝试将所有相同的数据值放入一个对象数组中。这是我的输入:

var a = [{
name: "Foo",
id: "123",
data: ["65d4ze", "65h8914d"]
},
{
name: "Bar",
id: "321",
data: ["65d4ze", "894ver81"]
}
]

我需要这样的结果:

["65d4ze"]

我尝试在我的对象上循环以获得此输出,但我完全迷路了......我不知道如何知道结果是否进入所有数据数组。

var a = [{
name: "Foo",
id: "123",
data: ["65d4ze", "65h8914d"]
},
{
name: "Bar",
id: "321",
data: ["65d4ze", "894ver81"]
}
],
b = [],
c = []
a.forEach(function(object) {
b.push(object.data.map(function(val) {
return val;
})
);
});

console.log(b);

最佳答案

您可以映射 data 并使用 Array#map 获取公共(public)值, Array#reduce , Array#filter , SetSet#has .

var array = [{ name: "Foo", id: "123", data: ["65d4ze", "65h8914d"] }, { name: "Bar", id: "321", data: ["65d4ze", "894ver81"] }],
key = 'data',
common = array
.map(o => o[key])
.reduce((a, b) => b.filter(Set.prototype.has, new Set(a)));

console.log(common);

关于JavaScript 对象数组包含相同的数组数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55335302/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com