私の場合、2つの配列をマッピングし、自分のコードで新しい配列を作成するためにどのように私は2つの配列をマッピングしようとしています
私は
var array1 =[
{'name':'John'
'id': '1'},
{'name':'Ted'
'id': '2'},
{'name':'KK'
'id': '3'}
];
var array2 =[1, 2];
var info = [];
for (var i = 0; i <array2.length; i++){
var id = array2[i];
var p = array1.filter(function(person){
return id === person.id
})
info.push(p)
}
私が望むような何かが私のinfo
配列は、ジョンとが含まれている必要がありテッド
[
{'name':'John'
'id': '1'},
{'name':'Ted'
'id': '2'}
]
などの代わりに、私は
[
[
{'name':'John'
'id': '1'}
],
[
{'name':'Ted'
'id': '2'}
]
]
を得ました
私は何が間違っているのか分かりません。とにかく私のコードを改善してより充実していますか?どうもありがとう!
あなたはコードを修正する必要があります – j08691
あなたのコードは裏返しです。 'filter'内で' array2'をループするか、 'indexOf'や' some'を使うのが良いでしょう。 – 1983