我怎么能得到一个对象内的所有对象,它是存在于一个数组内,并将结果添加到另一个数组



我正在努力解决一个困扰我很多的问题。我不擅长JSON数据操作。

问题是我有一个包含多个对象的数组其中包含一些数据,现在在这些对象中,我有另一个我想要的对象数组

JSON看起来像这样-

const data = [{
a: 2,
b: 3,
c: 4,
d: [{
e: 5,
f: 4,
g: 6,
}, {
h: 5,
i: 4,
j: 6,
}]
}, {
a: 11,
b: 31,
c: 42,
d: [{
e: 54,
f: 46,
g: 62,
}, {
h: 55,
i: 42,
j: 64,
}]
}]

现在我想要的是一个数组,它包含以下数据

const d = [{
e: 5,
f: 4,
g: 6,
}, {
h: 5,
i: 4,
j: 6,
}, {
e: 54,
f: 46,
g: 62,
}, {
h: 55,
i: 42,
j: 64,
}]

我尝试映射数据,但我总是以一个数组结束,看起来

const data = [
[{
e: 5,
f: 4,
g: 6,
}, {
h: 5,
i: 4,
j: 6,
}],
[{
e: 54,
f: 46,
g: 62,
}, {
h: 55,
i: 42,
j: 64,
}]
]

不知道我做错了什么。需要帮助

您可以遍历data,然后再次遍历data.d以获得所需的所有数据。对于每个数据,将其压入稍后将使用的另一个数组。

const data = [{a:2,b:3,c:4,d:[{e:5,f:4,g:6,},{h:5,i:4,j:6,}]},{a:11,b:31,c:42,d:[{e:54,f:46,g:62,},{h:55,i:42,j:64,}]}]
let result = [];
data.forEach(d => d.d.forEach(dd => result.push(dd)));
console.log(result);

最新更新