新特性——Array.prototype.includes() 方法
在 JavaScript 中,Array 是一种常用的数据类型。在处理数组时,我们可能需要判断某个元素是否包含在其中。以往的做法是使用 indexOf() 方法,该方法返回匹配元素的索引值,如果未找到则返回 -1。但是,该方法在进行全等比较时可能会出现难以预料的结果,尤其是当数组元素存在 NaN 的时候。这个问题在 ECMAScript 6 中得到了解决,该版本新增了一个方法:Array.prototype.includes()。
语法
Array.prototype.includes() 方法语法如下:
arr.includes(valueToFind[, fromIndex])
其中,arr 是要进行查找的数组,valueToFind 是要查找的元素,fromIndex 是查找的起始位置。fromIndex 参数是可选的,如果省略,将从数组的开始位置进行搜索。
返回值
Array.prototype.includes() 方法返回一个布尔值,表示是否找到了指定的元素。找到了则返回 true,没找到则返回 false。
举例说明
const array = [1, 2, 3, 4, NaN]; console.log(array.includes(2) === true); // true console.log(array.includes(10) === false); // true console.log(array.includes(NaN) === true); // true console.log(array.indexOf(NaN) === -1); // true,indexOf() 无法识别 NaN
示例代码
下面是一个示例代码,演示如何使用 Array.prototype.includes() 方法判断某个元素是否包含在数组中:
-- -------------------- ---- ------- ----- ----- - --- -- -- -- ----- -------- ------------- ------ - ------ -------------------- - --------------------------- -- --- ------ -- ---- --------------------------- --- --- ------- -- ---- --------------------------- ---- --- ------ -- ----
总结
Array.prototype.includes() 方法是 ECMAScript 6 中新增的方法,通过该方法我们可以更方便地判断某个元素是否包含在数组中。该方法相比于 indexOf() 方法更加准确,能够正确地处理 NaN 问题。在实际应用中,我们可以通过该方法来提高代码的可读性和执行效率。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6518d72095b1f8cacd119b64