find()
方法的语法为:
arr.find(callback(element, index, arr),thisArg)
在这里, arr是一个数组。
find()参数
find()
方法采用:
- callback-在数组的每个元素上执行的函数。它包含:
- element-数组的当前元素。
- thisArg (可选)-在callback内部用作
this
对象的对象。
从find()返回值
- 返回满足给定函数的数组中第一个元素的值 。
- 如果所有元素都不满足该函数,则返回undefined 。
示例1:使用find()方法
function isEven(element) {
return element % 2 == 0;
}
let randomArray = [1, 45, 8, 98, 7];
firstEven = randomArray.find(isEven);
console.log(firstEven); // 8
// using arrow operator
firstOdd = randomArray.find((element) => element % 2 == 1);
console.log(firstOdd); // 1
输出
8
1
示例2:带有Object元素的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 }
// using arrow function and deconstructing
adultMember = team.find(({ age }) => age >= 18);
console.log(adultMember); // { name: 'Alan', age: 20 }
输出
{ name: 'Alan', age: 20 }
{ name: 'Alan', age: 20 }
推荐阅读: JavaScript Array.findIndex()