您的位置 首页 技术专栏

JS中 includes() vs indexOf(),聊聊它们有什么区别

24小时课堂在线收录JS中 includes() vs indexOf(),聊聊它们有什么区别,本篇文章给大家简单对比一下JavaScript中的includes() 和 indexOf()方法,聊聊它们有什么区别,希望对大家有所帮助!…感谢您关注JS中 includes() vs indexOf(),聊聊它们有什么区别。

本篇文章给大家简单对比一下JavaScript中的includes() 和 indexOf()方法,聊聊它们有什么区别,希望对大家有所帮助!

1、基本区别

includes()和indexOf()都是用来检查数组是否包含某些元素,includes()返回值是布尔值,indexOf()返回的是索引值,如果没有返回-1。【相关推荐:javascript学习教程】

let arr = [1,2,3]arr.indexOf(0)// -1arr.indexOf(2)// 1arr.includes(2)// true

2、检查NAN和undefined

因为indexOf()是严格按照===操作符来做值的比较,所以indexOf()不能检查NAN,但是includes()可以

let arr = [NaN,]arr.indexOf(NaN)// -1arr.indexOf(undefined) // -1arr.includes(NaN)// truearr.includes(undefined)// true

3、检查-0和+0

includes()和indexOf()没有区分-0和+0,在判断时,认为二者是相同的

let arr = [+0]arr.includes(-0) // truearr.indexOf(-0) // 0

4、不能检查复杂数据类型

二者只能判断简单数据类型,对于对象、数组等复杂数据类型是不可以判断的

let arr = [{a:1},{a:2}]arr.includes({a:1}) // falsearr.indexOf({a:1}) // -1

5、indexOf()可用于字符串

返回指定字符第一次出现的位置,并且存在有隐式转换

let str = ‘a1b2c3’str.indexOf(‘2’)); //3str.indexOf(1)); //3

更多编程相关知识,请访问:编程视频!!

以上就是JS中 includes() vs indexOf(),聊聊它们有什么区别的详细内容,更多请关注24小时课堂在线其它相关文章!

本文来自网络,不代表24小时课堂在线立场,转载请注明出处:https://www.24ketang.cn/100019.html

为您推荐

返回顶部