@Heinsed
Junior Front-end developer

Фильтрация массива на совпадения?

let arr1 = [ ["british", "classic-rock"], ["pop"], ["rock", "classic-rock"] ]

let arr2 = ["british", "pop"]


Как отфильтровать arr1 на совпадения arr2?

На выходе должно быть - [ ["british", "classic-rock"], ["pop"] ]
  • Вопрос задан
  • 231 просмотр
Решения вопроса 1
WblCHA
@WblCHA
const groups = [
    ["british", "classic-rock"],
    ["pop"],
    ["rock", "classic-rock"],
  ];
  const filterKeys = ["british", "pop"];
  
  groups.filter((g) => filterKeys.some((k) => g.includes(k)))
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
TTATPuOT
@TTATPuOT
https://code.patriotovsky.ru/
Ничего не понял. Почему в первом примере вы взяли в конечный массив classic-rock, а во втором решили от него отказаться?

Скорее всего, вам подойдёт метод .filter(). Просто проверяете через этот метод каждый элемент массива на наличие в выбранных.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы