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

JavaScript021

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

可以用数组的indexOf函数,方法arr.indexOf(find,start)

find:要找的内容,必须;

start:查找开始下标,可选;

返回:查找数据所在的下标,如果没找到,返回-1

如果只要知道是否有8这个数字,直接调用arr.indexOf(8),如果返回值不为-1,说明找到了

var s=[1,2,3,5,6,9]

var u=s.indexOf(5)//返回5所在的下标3

var d=s.indexOf(8)//返回-1

console.log(u)

console.log(d)

1.arr.indexOf(搜索元素,开始位置):

元素在数组中的位置,如果没搜索到则返回 -1

2.arr.includes(搜索元素):

如果是返回 true,否则false

3.filter() 方法:返回符合条件的元素组成的数组

4.array.find():返回找出第一个符合条件的数组元素

5.array.findIndex():返回第一个符合条件的数组元素的位置,

如果所有元素都不符合条件,则返回-1

6.传统for()循环

7.for...of

8.forEach

9.some():用于检测数组中的元素是否满足指定条件(函数提供)

如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。

如果没有满足条件的元素,则返回false。

10.every:用于检测数组中的元素是否满足指定条件(函数提供)

如果都满足条件,则表达式返回true ,

如果有一个不满足,则返回false。

const array = ['apple', 'banance', 'orange']

array.indexOf('apple')// 0 存在

array.indexOf('strawBerry') // -1不存在

const array = ['apple', 'banance', 'orange']

array.find(obj =>obj == 'banance')//banance 存在

array.find(obj =>obj == 'strawBally')//undefined 不存在

const arrayList = [

{name: '张三'}, {name: '李四'}

]

arrayList.find(obj =>obj.name == '李四')//{name: '李四'} 存在

arrayList.find(obj =>obj.name == '王五')//undefined 不存在

const array = ['apple', 'banance', 'orange']

array.findIndex(obj =>obj == 'banance') //大于0存在

array.findIndex(obj =>obj == 'strawBally') //-1 不存在

const array = ['apple', 'banance', 'orange']

array.includes('banance') //true存在

array.includes('strawBally') //false存在

const array = ['apple', 'banance', 'orange']

array.filter(obj =>obj == 'orange') //['orange'] 存在

array.filter(obj =>obj == 'strawBally') //[] 不存在

const array = [{ name: 'banance' }, { name: 'apple' }]

console.log(array.filter(obj =>obj.name === 'apple'))//[{name: 'apple'}] 存在

console.log(array.filter(obj =>obj.name === 'strawBally'))//[] 不存在