总结JavaScript中数组内置方法之查找方法

81 阅读2分钟

数组的内置方法

数组查找

01.如何在一个数组中查找满足指定条件的一个元素并返回? 可以使用:Array.protoptype.find()。说明:该方法用于返回指定数组中满足提供指定条件的第一个元素值。

举例说明:

 <script type="text/javascript">
      let userList = [
        {
          username: "张三",
          userage: 22,
          usersex: "男",
        },
        {
          username: "李四",
          userage: 17,
          usersex: "女",
        },
        {
          username: "刘凤",
          userage: 29,
          usersex: "男",
        },
        {
          username: "刘龙",
          userage: 21,
          usersex: "男",
        },
        {
          username: "章怡",
          userage: 39,
          usersex: "男",
        },
      ];

      //  查找userList中年龄大于20岁的第一个人
      const findResult = userList.find((item) => item.userage > 20);
      console.log(findResult); // {"username": "张三","userage": 22,"usersex": "男" }
    </script>

注意要点:

该方法会返回一个新的数组,并且原数组不被改变。

02.如何查找userList数组中第一个满足条件元素的索引
可以使用:Array.prototype.findIndex()
解释:该数组中的内置方法主要用于查找数组中满足指定条件元素的第一个的索引。

  // 查找userList中年龄大于26岁的第一个人在数组中所处的索引
  const findIndexResult = userList.findIndex((item) => item.userage > 25);
  console.log(findIndexResult);  // 2

注意要点:

该方法会将查找到的元素索引值进行返回,并且原数组不被改变。

03.如何查找userList数组中的最后一个满足条件的元素?
可以使用:Array.prototype.findLast();
解释:该内置数组方法可以将数组进行反向迭代,从而在数组中进行查找满足条件的第一个元素。

   //   查找userList中年龄小于30岁的最后一个
   const findLastResult = userList.findLast(item => item.userage < 30);
   console.log(findLastResult) // {username: '刘龙', userage: 21, usersex: '男'}

注意要点:

该方法会返回一个新的数组,并且原数组不被改变。

04.如何查找userList数组中最后一个满足条件元素的索引
可以使用:Array.prototype.findLastIndex()
解释:该数组中的内置方法主要用于查找数组中满足指定条件元素的第一个的索引。

  // 查找userList中年龄大于26岁的第一个人在数组中所处的索引
  const findLastIndexResult = userList.findLastIndex((item) => item.userage < 30);
  console.log(findLastIndexResult);  // 3