@peretc001

Как выполнить поиск по вложенным массивам?

Есть массив объектов:

const cities = 
[
  {
    id: 1, label: "Краснодарский край", children: [
      {id: 466, label: "Краснодар", coefficient: 3, regions_id: 1},
      {id: 900, label: "Сочи", coefficient: 1, regions_id: 1},
      {id: 672, label: "Новороссийск", coefficient: 1, regions_id: 1},
    ],
  },
  {
    id: 2, label: "Ростовская область", children: [
      {id: 808, label: "Ростов-на-Дону", coefficient: 2, regions_id: 2},
      {id: 941, label: "Таганрог", coefficient: 3, regions_id: 2},
      {id: 1072, label: "Шахты", coefficient: 1, regions_id: 2},
    ],
  },
  ...
]

Нужно найти массив по переданному id.

Если id = 1, на первом уровне вложенности то сложностей нет:

this.cities
          .filter((x) => x.id === item)
          .map((x) => x.coefficient)

Если id = 466, то получаю пустой массив.

Как произвести поиск по первому и по второму уровню вложенности?

Например, find = [1, 466]. Нужно найти id = 1 и id = 466.
  • Вопрос задан
  • 128 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы