js数组查找是否包含方法总结

JavaScript010

js数组查找是否包含方法总结,第1张

var arr = [1, 2, 3, 4, 5, 6]

方法一: indexOf (常用)

if (arr.indexOf(2) !== -1) { console.log("包含2") }

方法二: find() 该方法用于查找符合条件的第一个元素,如果找到了,返回这个元素,否则,返回undefined

if (arr.find(item =>item === 2)) { console.log("包含2") }

方法三: findIndex()   和find()类似,也是查找符合条件的第一个元素,不同之处在于findIndex()会返回这个元素的索引,如果没有找到,返回-1

if (arr.findIndex(item =>item === 2) !== -1) { console.log("包含2") }

方法四: some()  查找复合条件的元素, 如果查找到返回true, 反之false

if (arr.some(item =>item === 2) { console.log("包含2") }

方法五: 循环遍历 如map, forEach, if()等等, 此处只用forEach举例

aa.forEach(item =>{if (item === 2) {console.log("包含2")}})

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。

可以使用JavaScript原生自带的indexof方法。

定义和用法

indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。

语法

stringObject.indexOf(searchvalue,fromindex)

参数

searchvalue    必需。规定需检索的字符串值。  

fromindex    可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。  

说明

该方法将从头到尾地检索字符串 stringObject,看它是否含有子串 searchvalue。开始检索的位置在字符串的 fromindex 处或字符串的开头(没有指定 fromindex 时)。如果找到一个 searchvalue,则返回 searchvalue 的第一次出现的位置。stringObject 中的字符位置是从 0 开始的。

提示和注释

注释:indexOf() 方法对大小写敏感!

注释:如果要检索的字符串值没有出现,则该方法返回 -1。

小例子,仅供参考:

<script type="text/javascript">

    var str="Hello world!"

    document.write(str.indexOf("Hello") + "<br />")

    document.write(str.indexOf("World") + "<br />")

    document.write(str.indexOf("world"))

</script>