Массивы: фильтруйте() то, что вы хотите, ничего больше.
Если вы когда-либо чувствовали себя перегруженными данными, вы не одиноки. Иногда мы работаем с наборами данных, которые содержат гораздо больше информации, чем нам требуется, и сортировка всего этого может показаться плаванием посреди океана. Не бойтесь, метод filter() здесь.
Недавно мне пришлось выбирать между работой со слишком большим объемом данных, что привело бы к неудовлетворительному макету и пользовательскому опыту, или поиском решения. После быстрого поиска filter() смотрел мне прямо в лицо.
В отличие от расширения, сращивания и среза, мы не ограничены получением информации в начальной и конечной точках, которые мы создаем. Filter() позволяет нам выборочно брать только индексы или пары ключ:значение, которые мы ищем в массиве или объекте, и анализировать их в новый массив.
Допустим, у нас есть массив с именами, фамилиями и профессиями. Нам поручено собрать сведения о профессиях каждого человека по имени Том, Ричард и Гарри. Если нам не посчастливилось работать со списком, упорядоченным по имени, filter() будет нашим лучшим другом.
Мы можем либо быстро создать 1 функцию, извлекающую всех Томов, Ричардов и Гарри, что приведет к 1 новому массиву, либо создать 3 аналогичные функции с массивом для всех Томов, всех Ричардов и всех Гарри. Ниже мы можем точно увидеть, насколько легко было бы получить нужную нам информацию.
function tomRichardHarryFinder(collection) { for (const user of collection) { if (user.firstName === 'Tom' || user.firstName === 'Richard' || user.firstName === 'Harry') { console.log(user.firstName) } } } function tomFinder(collection) { for (const user of collection) { if (user.firstName === 'Tom') { console.log(user.firstName) function richardFinder(collection) { for (const user of collection) { if (user.firstName === 'Richard') { console.log(user.firstName) function harryFinder(collection) { for (const user of collection) { if (user.firstName === 'harry') { console.log(user.firstName)
Если вы хотите узнать больше о методе фильтрации, ниже я приложил ссылки на отличную документацию и видео.