js判断数组中是否存在某一数值的五种方法

1.javascript的indexOf()方法 
var arr_data = [1,2,3]; 
arr_data.indexOf(1); //如果存在返回值的下标,不存在返回-1

2.jquery的$.inArray()方法 

$.inArray(1, arr_data); //如果存在返回值的下标,不存在返回-1

3.arr.find()

数组实例的find()用于找出第一个符合条件的数组元素。它的参数是一个回调函数,所有的数组元素依次遍历该回调函数,直到找出第一个返回值为true的元素,然后返回该元素,否则返回undefined。

注意:find()对于空数组,函数是不会执行的。find()并没有改变数组的原始值

arr.find(function(value) {

if(value === 要查找的值) {

//则包含该元素

}})

4.arr.findIndex()返回第一个符合条件的数组元素的位置,如果所有的元素都不符合条件,则返回-1.

注意:find(),findIndex()弥补了index的不足:(即判断NAN)

[NaN].indexOf(NaN) // -1

[NaN].findIndex(y => Object.is(NaN, y))// 0

5.for循环和if判断

var arr = [1, 5, 10, 15];
//传统for
for(let i=0; i<arr.length; i++) {
    if(arr[i] === 查找值) {
        //则包含该元素
    }
}
// for...of
for(v of arr) {
    if(v === 查找值) {
        //则包含该元素
    }
}
//forEach
arr.forEach(v=>{
    if(v === 查找值) {
        //则包含该元素
    }
})
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
版权声明:本文

猜你喜欢

转载自blog.csdn.net/weixin_38098192/article/details/80476039