数组有includes方法吗(用indexOf还是includes)

本文目录
用indexOf还是includes
js中有两个判断数组是否存在某个元素的方法,一个是includes,一个是indexOf。
includes使用起来很方便,本身返回的也是布尔值
indexOf的话则是
两个方法似乎都能达到我们的目的,但有以下一种情况,当我们的数组里面存在 NaN 值的时候。
这个值比较特殊:
可以看出,虽然都是NaN,但却不是相等的。
然后我们再来看一下:
这里差异就出来了,明显indexOf没有对 NaN 值做处理。但也正是因为如此,indexOf的效率明显要高于includes。所以我们使用indexOf的过程中要注意 NaN 值带来的影响,避免其引起隐晦的bug。
ES6中Array.includes()函数如何使用
本文主要和大家介绍ES6中Array.includes()函数的用法,需要的朋友可以参考下,希望能帮助到大家。
在ES5,Array已经提供了indexOf用来查找某个元素的位置,如果不存在就返回-1,但是这个函数在判断数组是否包含某个元素时有两个小不足,第一个是它会返回-1和元素的位置来表示是否包含,在定位方面是没问题,就是不够语义化。另一个问题是不能判断是否有NaN的元素。
结果:
-1
ES6提供了Array.includes()函数判断是否包含某一元素,除了不能定位外,解决了indexOf的上述的两个问题。它直接返回true或者false表示是否包含元素,对NaN一样能有有效。
结果:
true
false
true
includes()函数的第二个参数表示判断的起始位置。
结果:
true
true
false
第二个参数也可以是负数,表示从右数过来第几个,但是不改变判断搜索的方向,搜索方向还是从左到右。
结果:
false
true
false
debug:怎样查看数组值
includes() 方法用来判断一个数组是否包含一个指定的
let a = ; a.includes(2); // true a.includes(4); // false

更多文章:
array push back(如图,Plane是一个类,v_array.push_back(fly)是啥意思)
2025年8月4日 17:45
sqlserver if语句(sql语句中if判断条件怎么写)
2025年7月19日 21:15
matlab产生随机数(用matlab生成0到100之间的一组随机数)
2025年10月20日 02:45
域名停靠app大全免费下载网站(十大免费软件app下载网站)
2025年10月8日 20:00
windows net user(windows无法启动update位于本地计算机错误5)
2025年6月25日 13:30
pycharm怎么返回上一步操作(pycharm如何打开回退上一步按钮)
2026年7月20日 06:45
assistant拆分记忆(求救!黑莓8700怎么取消被记忆的设置)
2025年9月4日 04:15
select语句有什么用(SQL select语句除了用于查询外还有哪些其他用途)
2026年1月29日 16:00
webservice接口难吗(webservice接口测试问题)
2025年6月25日 05:30











