# Array.find()和findIndex()方法
JavaScript的方法“遍历”从数组开始!先从简单的开始。。😂
Array.find()和Array.findIndex()的区别有两点:
- 前者是找值,后者是找索引;
 - 前者找到则返回项,找不到返回
undefined,后者找到返回项的索引,找不到则返回-1。 
它们的共同点:找到第一个符合条件的项就停止寻找。并且二者都不会改变原数组。
# 一、Array.find()
 寻找第一个大于4的数
const array = [1, 2, 3, 4, 5, 6, 7];
let res = array.find(item => item > 4);
console.log(res);// 5
 1
2
3
2
3
寻找第一个年龄大于25的成员
const allMembers = [
  {name: '张三', age: 21},
  {name: '李思', age: 19},
  {name: '王武', age: 27},
  {name: '赵柳', age: 32},
  {name: '韩起', age: 20}
];
let res = allMembers.find(item => {
  return item.age > 25;
});
console.log(res);// {name: "王武", age: 27}
 1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
# 二、Array.findIndex()
 寻找第一个大于4的项的索引
const array = [1, 2, 3, 4, 5, 6, 7];
let res = array.findIndex(item => item > 4);
console.log(res);// 4
 1
2
3
2
3
寻找第一个年龄大于25的成员的索引
const allMembers = [
  {name: '张三', age: 21},
  {name: '李思', age: 19},
  {name: '王武', age: 27},
  {name: '赵柳', age: 32},
  {name: '韩起', age: 20}
];
let res = allMembers.findIndex(item => {
  return item.age > 25;
});
console.log(res);// 2
 1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12