【发布时间】:2017-08-06 22:46:06
【问题描述】:
我有一个名为packages 的对象数组。每个对象都有一个名为modules 的属性,它是另一个对象数组。每个modules 数组中的每个对象都有一个唯一的ID。我想使用 ID 将所有 modules 数组中的每个唯一对象放入一个数组中。
packages = [
{ id: 1, modules:[{ id: 1, name: 'module1' }, { id: 2, name: 'module2' }]},
{ id: 2, modules:[{ id: 1, name: 'module1' }, { id: 3, name: 'module3' }]},
{ id: 3, modules:[{ id: 2, name: 'module2' }, { id: 4, name: 'module4' }]}
];
我需要的结果是:
allModules = [
{ id: 1, name: 'module1' },
{ id: 2, name: 'module2' },
{ id: 3, name: 'module3' },
{ id: 4, name: 'module4' }
];
我使用的是 TypeScript,但不是 ES6。
【问题讨论】:
-
酷。那么你尝试了什么? stackoverflow.com/help/mcve
-
在
packages定义的第 4 行中,您有 { id: 1, name: 'module4' }。我认为这应该是id: 4?但是,如果您的模块 ID 对模块来说都是唯一的,那么与其将具有名称和 id 的对象存储在数组中,不如使用关联数组,其中 id 作为键和名称值。 -
@PeretteBarella 谢谢我修正了错字
标签: javascript arrays typescript javascript-objects