ES9 中 Array.prototype.includes() 方法的使用
随着 JavaScript 语言的快速发展,我们越来越依赖内置对象和方法来解决日常开发中的问题。其中,数组是最常用的数据类型之一。为了更高效地操作数组,ES9 引入了 Array.prototype.includes() 方法,该方法可以方便地判断数组中是否包含某个元素。
Array.prototype.includes() 方法的语法如下:
arr.includes(searchElement[, fromIndex])
searchElement
:要查找的元素。fromIndex
(可选):从哪个位置开始查找。默认值为 0。
该方法返回值是一个布尔值,即是否包含该元素。
在 ES9 之前,通常使用 Array.prototype.indexOf() 方法来判断数组中是否包含某个元素。但该方法有以下局限:
- indexOf() 方法返回元素在数组中的索引值,如果没有找到则返回 -1。
- 因为 -1 是合法的索引值,所以在需要判断是否包含某个元素时,需要使用额外的条件判断。
- 如果数组中包含 NaN 元素,则 indexOf() 方法无法正常工作。
而 Array.prototype.includes() 方法则能够解决这些问题,具有以下优点:
- includes() 方法返回一个布尔值,无需进行额外的条件判断。
- includes() 方法可正确判断数组中是否包含 NaN 元素。
下面举个例子:
const arr = [1, 2, 3, NaN]; console.log(arr.includes(2)); // true console.log(arr.includes(NaN)); // true console.log(arr.includes(4)); // false
上面的代码中,我们定义了一个数组 arr,包含整数和 NaN 元素,然后使用 includes() 方法来判断数组中是否包含某些元素。这里注意到,includes() 方法可以正确地判断 NaN 元素,这个特性将会解决许多判断数组中是否包含某个元素的问题。
总结一下,ES9 中 Array.prototype.includes() 方法的使用能够帮助我们更方便地判断数组中是否包含某个元素,而且能够更好地兼容 NaN 元素。在实际开发过程中使用 includes() 方法可以使代码更加简洁和易于维护。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/648e8b5948841e9894ce86ed