У меня есть массив объектов, как показано ниже
readonly allItems = [
{
id: 0,
title: "Item 0",
belongsTo: 'admin'
},
{
id: 1,
title: "Item 1",
belongsTo: 'user'
},
{
id: 2,
title: "Item 2",
belongsTo: 'all'
},
{
id: 3,
title: "Item 3",
belongsTo: 'user'
},
{
id: 4,
title: "Item 4",
belongsTo: 'all'
}
];
И у меня есть массив чисел, как показано ниже
let selItems = [0,2,4];
Я пытаюсь фильтроватьмассив allItems
на основе массива selItems
Для этого я написал следующий код, который явно неверен.
for(let i=0; i< this.allItems.length; i++){
if(selItems.includes(this.allItems[i].id)){
tempMenu.push(this.allItems[i]);
}
console.log(tempMenu);
}
В качестве вывода я получаю следующее
[{
id: 0,
title: "Item 0",
belongsTo: 'admin'
}]
Результат, который я ожидаю, таков:
[
{
id: 0,
title: "Item 0",
belongsTo: 'admin'
},
{
id: 2,
title: "Item 2",
belongsTo: 'all'
},
{
id: 4,
title: "Item 4",
belongsTo: 'all'
}
]
Может кто-нибудь показать мне правильный способ сделать это?Спасибо!