Как удалить элементы из массива, используя элементы из другого массива?
У меня есть два массива
let unnecessaryNames: Array<string> = ["Alex", "Dmitry", "Rustam"];
let names: Array<number, string> = [1, "Maxim", 2, "Oleg", 3, "Alex", 4, "Dmitry", 5, "Rustam", 6, "Roman"];
мне нужно удалить из массива names все элементы, совпадающие с элементами массива unnecessaryNames, чтобы на выходе в массиве names остались [1, "Maxim", 2, "Oleg", 6, "Roman"]
Ответы (1 шт):
Автор решения: vsemozhebuty
→ Ссылка
Можно так:
let unnecessaryNames = ["Alex", "Dmitry", "Rustam"];
let names = [1, "Maxim", 2, "Oleg", 3, "Alex", 4, "Dmitry", 5, "Rustam", 6, "Roman"];
for (let i = 1; i < names.length; i += 2) {
if (unnecessaryNames.includes(names[i])) {
names.splice(i-1, 2);
i -= 2;
}
}
console.log(names);