findIndex方法常用来查找数组中满足条件的第一项元素的下标

const arr = [1, 2, 3, 4, 5, 3, 3, 2, 4, 5 ]

// 可以这么写

const index = arr.findIndex(item => {
    return item > 2
})

console.log(index) // 2

// 也可以这么写

const index = arr.findIndex(item => item > 2)

console.log(index) // 2

返回的index是满足条件的第一项元素的下标,这要注意的是findIndex会给数组中的每一项执行一个函数来判断是否满足表达式,如果满足条件后,剩下的元素则不再执行

查找数组中满足条件的某一项,并且返回那一项对应的值可以用find方法

    const arr = [
      {
        name: '张三',
        age: 18
      },
      {
        name: '李四',
        age: 20
      },
      {
        name: '王五',
        age: 22
      }
    ]

    const val = arr.find(item => {
      return item.age === 20
    })
    
    // 还可以这么写
    const val = arr.find(item => item.age === 20)
    console.log(val)  
     // {
            name: '李四',
            age: 20
        }

和findIndex一样,返回满足条件的值,并且不检测剩余值,只不过findIndex返回的是下标,find方法是返回满足条件的那一个元素,具体怎么使用看场景需要

注:两个方法都不会改变原数组

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐