«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как отфильтровать вложенные массивы в объектах на основе конкретного значения?

Как отфильтровать вложенные массивы в объектах на основе конкретного значения?

Опубликовано в 2025-02-16
Просматривать:783

] How to Filter Nested Arrays in Objects Based on a Specific Value?

массив фильтрации объектов с массивами на основе вложенного значения

вы пытаетесь отфильтровать массив объектов, основанных на вложенной стоимости в них. объекты Цель состоит в том, чтобы создать новый массив, который включает только объекты с определенным значением для вложенного свойства.

для достижения этого вы использовали следующую формулу:

let filteredArray = arrayOfElements.filter((element) => element.subElements.some((subElement) => subElement.surname === 1));
] Эта формула отфильтровала объекты из исходного массива, у которого есть как минимум одна подзадач -ЭSELEMENT со свойством фамилии, равным 1. Однако вывод не совсем то, что вы ожидали. Вместо того, чтобы удалять подэлементы, которые не соответствуют условию фильтра, он возвращает объекты со всеми подэлементами, включая те, которые не совпадают. вместо функции фильтра. Это позволит вам создать новый массив, преобразуя каждый элемент в исходном массиве. Трансформированный элемент будет включать только подэлементы, которые соответствуют условию фильтра.

Вот улучшенная формула с использованием функции отображения:

let filterEdarray = arrayofelements.map ((element) => { return {... element, subelents: element.subelements.filter ((subelement) => subelement.surname === 1)} })

в этой улучшенной формуле:
let filteredArray = arrayOfElements.filter((element) => element.subElements.some((subElement) => subElement.surname === 1));

функция карты итерации по каждому элементу в массиве ArrayOfelements.

    для каждого элемента создает новый объект, который Включает в себя свойства исходного элемента и массив фильтрованных подборов. Этот случай.
  • ]
  • оператор распространения (...) используется для создания нового объекта, который объединяет свойства исходного элемента с массивом отфильтрованных подраздел массив, который включает только те объекты, которые имеют по крайней мере один подэлемент со свойством фамилии, равным 1, и каждый объект будет иметь только соответствующие подэлементы.
  • ]
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3