新增 Array.prototype.includes 方法 - JavaScript ES2016 更新

阅读时长 3 分钟读完

JavaScript ES2016 引入了一个新方法 Array.prototype.includes(),用于检查一个数组是否包含一个指定元素。在此之前,我们经常使用 indexOf() 方法来判断元素是否存在于数组中。但是,includes() 方法更加简单直观,并且可以使用严格相等运算符来比较元素。

语法

Array.prototype.includes() 方法的语法如下:

其中,searchElement 是要查找的元素,fromIndex 是可选参数,指定了搜索开始的位置。

示例

下面是一个使用 includes() 方法的例子:

indexOf() 不同的是,includes() 方法可以正确处理 NaN 值和数组中包含 undefined 的情况:

深入探讨

includes() 方法是基于严格相等运算符(===)进行匹配的。这意味着,它在比较时不会进行类型转换,也不会将空值与 undefined 进行相等性比较。下面是一些示例:

includes() 方法的第二个参数指定了搜索开始的位置。如果省略该参数,则默认从数组的首个元素开始查找。如果指定的 fromIndex 值小于 0,则将其视为从末尾开始的偏移量:

总结

Array.prototype.includes() 方法是 JavaScript ES2016 新增的一个有用方法,它可以更容易地检查一个数组是否包含一个特定的元素。可以使用该方法替换原来的 indexOf() 方法,使代码更加简洁易懂。但需要注意,在比较时,includes() 方法使用严格相等运算符,并不会进行类型转换和空值与 undefined 的相等性比较。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6517871495b1f8cacdfb5706

纠错
反馈