js如何查找数组中是否存在某个值

JavaScript024

js如何查找数组中是否存在某个值,第1张

可以用数组的includes函数判断数组中是否存在某个值。

1、创建一个数组,为数组添加成员,然后将这个数组赋值给一个变量,这里以arr为例:

2、使用数组的includes函数,函数的参数为查找的值,如果数组中有被查找的值,则函数输出“true”:

3、如果数组中没有被查找的值,则函数会输出“false”:

1.js的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()并没有改变数组的原始值

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

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

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

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

5.最常见的就是 for和if 的组合

注意: 这里forEach return false 是阻止不了循环的行为;

var a = new Array("a","b","cc","d3")//

删除a数组的cc元素

//jQuery.inArray()函数用于在数组中搜索指定的值,并返回其索引值。如果数组中不存在该值,则返回 -1。该函数属于全局jQuery对象。

jquery 1.2中添加的该静态方法var index = $.inArray("cc",a)

if(index>=0){//arrayObject.splice(index,howmany,item1,.....,itemX)

//参数描述//index  必需。

整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置,//howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。

//item1, ..., itemX 可选。向数组添加的新项目。

 a.splice(index,1)

 alert(a.totring())

}else{

 alert("error") return false

}