vue 判断一个数是否在数组中_js判断数组中是否存在某一数值的方法

时间:2025-02-09 21:02:44

的indexOf()方法

var arr_data = [1,2,3];

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

的$.inArray()方法

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

()

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

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

(function(value) {

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

//则包含该元素

}})

const myArr=[1,2,3,4,5,6];

var v=(value=>value>4);

(v);// 存在值 返回该元素

var v=(value=>value>10);

(v);//不存在,返回undefined

回调函数有三个参数。value:当前的数组元素。index:当前索引值。arr:被查找的数组

var arry = [23,34,43,4,41,45,6];

var v=((value,index,arr)=>{

return index==4

});

(v); //41 返回元素

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

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

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

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

var arry = [23,34,43,4,45,45,6];

var i = ((value)=>value==4);

(i); 存在则返回元素在数组的位置,此处返回3,不存在则返回-1。

循环和if判断

var arr = [1, 5, 10, 15];

//传统for

for(let i=0; i

if(arr[i] === 查找值) {

//则包含该元素

}

}

// for...of

for(v of arr) {

if(v === 查找值) {

//则包含该元素

}

}

//forEach

(v=>{

if(v === 查找值) {

//则包含该元素

}

})

filter()

filter()与find()使用方法也相同。同样都接收三个参数。不同的地方在于返回值。filter()返回的是数组,数组内是所有满足条件的元素,而find()只返回第一个满足条件的元素。如果条件不满足,filter()返回的是一个空数组,而find()返回的是undefined

var arry = [23,34,43,4,41,23,34,45,6];

((item=>item>40)); //[43, 41, 45] 返回符合条件的数组

数组去重

(((value,index,arr)=>(value)===index)); //[23, 34, 43, 4, 41, 45, 6]