JS查找元素

  • indexOf, lastIndexOf
  • includes // es7
  • some
  • every
  • find, findIndex // es6
  • filter // es5

indexOf, lastIndexOf

返回数组中和参数相等的元素的位置, 如果没有 返回 -1
indexOf 从左向右查找, lastIndexOf 从右向左查找

let arr = [1, 2, 3, 4, 5, 5]
arr.indexOf(5) // 4

includes

判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true

arr.includes(5) // true

some

测试数组中是不是至少有1个元素通过了被提供的函数测试

arr.some((item, index, arr) => item === 5) // true

every

测试一个数组内的所有元素是否都能通过某个指定函数的测试

arr.every((item, index, arr) => {
  return item > 0
})  // true

filter

filter 返回所有符合条件的元素, 并存放在数组内, 可以通过判断 数组的长度 来确定是否存在一个元素

let find = arr.filter((item, index, arr) => {
  return item === 5
})
find  // [5, 5]

find,findIndex

返回符合条件的第一个元素并且停止查找, 如果没有就返回undefined
find 的条件函数只有一个参数(当前循环的值)

let find = arr.find(item => {return item === 5})
find // 5
let find = arr.find(item => {return item === 5})
find // 4

你可能感兴趣的:(JS查找元素)