2017-05-04 67 views
-1

從返回數組對象,其中對象ID如下:在考慮到另一個陣列

var ids = [1, 2, 5]; 
var objects = [ 
    {id: 1, name: 'John'}, 
    {id: 2, name: 'Liam'}, 
    {id: 3, name: 'Emily'}, 
    {id: 4, name: 'Scott'}, 
    {id: 5, name: 'Bob'}, 
] 

我怎樣才能返回一個對象從objects在「身份證」屬性在ids數組數組中的值?

PS - 使用uderscore也是一種選擇。

回答

1

可能的解決方案使用Array#filter

var ids = [1, 2, 5], 
 
    objects = [ 
 
     {id: 1, name: 'John'}, 
 
     {id: 2, name: 'Liam'}, 
 
     {id: 3, name: 'Emily'}, 
 
     {id: 4, name: 'Scott'}, 
 
     {id: 5, name: 'Bob'}, 
 
    ], 
 
    res = objects.filter(v => ids.indexOf(v.id) > -1); 
 
    
 
    console.log(res);