嘿家伙这必须看起来重复,因为我已经质疑这已被回答,但这次它有点不同。过滤对象的数组,并通过使用值的数组来获得它的属性
前面的问题: My previous question which is already been answered
所以这是我的问题,我有对象(人)财产被称为“名”的数组,“角色”。我有另一个名为'Jobs'的数组。如果我使用代码示例,效果会更好。
var jobs = ['engineer','scientist','developer'];
var people = [ {name:'John', role:'engineer'},
{name:'Jane', role:'scientist'},
{name:'Jonathan', role:'developer'},
{name:'Jane', role:'engineer'} ];
正如你可以看到具有相同属性'名称'的对象可以看到,但具有不同的作用。我想根据他们的角色使用'jobs'数组将他们提取到一个新数组中。
例输出将是:重复“人”的阵列上
var peopleWithJobs = [
{name:'John', jobs:['engineer'] }
{name:'Jane', jobs:['scientist', 'engineer'] },
{name:'Jonathan', jobs:['developer'] }
]
如果“名”的属性值是拿到作用,推动/追加到作业的新阵列“peopleWithJobs”的属性。
我一直在使用地图和筛选更高阶的功能,但即时通讯相当新的JavaScript,只是不能把我的头围绕这个逻辑。
我觉得做一个新的对象,使用人的名字为重点,以创建你的工作会更容易 –