Виталий Котов
Как работает метод find() - JavaScript
Метод find()
возвращает значение первого элемента массива, который удовлетворяет условиям заданной функции.
let numbers = [1, 3, 4, 9, 8];
// функция проверки четного числа
function isEven(element) {
return element % 2 == 0;
}
// получаем первое четное число
let evenNumber = numbers.find(isEven);
console.log(evenNumber);
// Вывод в консоль: 4
Синтаксис find()
Синтаксис метода find()
следующий:
arr.find(callback(element, index, arr), thisArg);
Где arr
- это массив.
Параметры find()
Метод find()
принимает:
callback
- функцию, которая будет вызываться для каждого элемента массива. Принимает:
element
- текущий элемент в массиве.
- функцию, которая будет вызываться для каждого элемента массива. Принимает:
thisArg
(необязательно) - значение, используемое в качествеthis
, при вызове функцииcallback
.
Возвращаемое значение find()
- Возвращает значение первого элемента массива, удовлетворяющего заданной функции.
- Возвращает
undefined
, если ни один из элементов не удовлетворяет функции.
Примеры
Пример 1: Использование метода find()
function isEven(element) {
return element % 2 == 0;
}
let randomArray = [1, 45, 8, 98, 7];
let firstEven = randomArray.find(isEven);
console.log(firstEven); // 8
// используем стрелочную функцию
let firstOdd = randomArray.find((element) => element % 2 == 1);
console.log(firstOdd); // 1
Вывод в консоль:
8
1
Пример 2: find() с элементами объекта
const team = [
{ name: "Bill", age: 10 },
{ name: "Linus", age: 15 },
{ name: "Alan", age: 20 },
{ name: "Steve", age: 34 },
];
function isAdult(member) {
return member.age >= 18;
}
console.log(team.find(isAdult)); // { name: 'Alan', age: 20 }
// используем стрелочную функцию и деструктуризацию
let adultMember = team.find(({ age }) => age >= 18);
console.log(adultMember); // { name: 'Alan', age: 20 }
Вывод в консоль:
{ name: 'Alan', age: 20 }
{ name: 'Alan', age: 20 }
Карта развития разработчика
Получите полную карту развития разработчика по всем направлениям: frontend, backend, devops, mobile