У меня есть объект, который выглядит следующим образом:
const faultGroup =
[{
comments:"",
faults:
[{
id:31,
name: "speaker"
},
{
id:22
name: "earphones"
},
{
id:25
name: "keyboard"
}];
}];
И у меня есть массив, который содержит массив с идентификатором
idArray = [25,22];
Предполагаемый результат:
result = ["earphones", "keyboard"];
Текущее решение:
result = [];
faultGroup.map(fg => {
if (!!fg.faults) {
fg.faults.forEach(fault => {
for (let i = 0; i < idArray.length; i++) {
if (idArray[i] === fault.id) {
this.result.push(fault.name);
}
}
});
}
});
Могу ли я узнать наиболее эффективный способ сделать это?(не уверен, как использовать фильтр и метод в этом случае). В настоящее время я использую комбинацию map и double для циклов.Ценю вашу помощь!