JS中 includes() vs indexOf(),聊聊它们有什么区别
导读:收集整理的这篇文章主要介绍了JS中 includes( vs indexOf( ,聊聊它们有什么区别,觉得挺不错的,现在分享给大家,也给大家做个参考。本篇文章给大家简单对比一下JavaScript中的includes( 和 indexO...
收集整理的这篇文章主要介绍了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(),聊聊它们有什么区别的详细内容,更多请关注其它相关文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: JS中 includes() vs indexOf(),聊聊它们有什么区别
本文地址: https://pptw.com/jishu/593366.html