在 JavaScript 中,数组是一种常用的数据类型。在 ES7(ECMAScript 2016)中,新增了一个 Array.prototype.includes() 方法,用于判断一个数组是否包含某个元素。在本文中,我们将详细介绍这个新方法的使用方法,语法和示例。
Array.prototype.includes() 方法简介
Array.prototype.includes() 方法用于判断一个数组是否包含某个元素。它返回一个布尔值,如果数组中包含该元素,则返回 true;否则返回 false。
这个方法是在 ES7 中引入的,因此,在旧版本的浏览器和 JavaScript 引擎中,可能无法使用该方法。不过,你可以使用 polyfill 或者转译成 ES5 代码来确保兼容性。
Array.prototype.includes() 方法语法
Array.prototype.includes() 方法的语法非常简单,只有一个必需的参数和一个可选的参数。如下所示:
array.includes(searchElement, fromIndex)
解释如下:
array
:要搜索的数组。searchElement
:要查找的元素。fromIndex
:可选的,从该索引开始搜索。如果该参数为负数,则从数组结尾开始计算。
Array.prototype.includes() 方法示例
下面是一些示例,演示 Array.prototype.includes() 方法的使用方法和返回值。
检查数组是否包含某个元素
我们可以使用 Array.prototype.includes() 方法来检查数组是否包含某个元素,如下所示:
const array = [1, 2, 3]; console.log(array.includes(2)); // true console.log(array.includes(4)); // false
从指定索引开始搜索元素
Array.prototype.includes() 方法还允许从指定索引开始搜索元素。如下例所示:
const array = [1, 2, 3, 4, 5]; console.log(array.includes(3, 2)); // true console.log(array.includes(3, 3)); // false
搜索 NaN
在 JavaScript 中,NaN 是一个特殊的值。如果使用 Array.prototype.indexOf() 方法搜索 NaN,将返回 -1,因为 NaN 不等于任何值,即使是它自己。但是,Array.prototype.includes() 方法特别针对 NaN 进行了处理。
console.log([NaN].includes(NaN)); // true console.log([1, NaN].includes(NaN)); // true console.log([1, 2, NaN].includes(NaN)); // true
总结
在本文中,我们介绍了 ES7 中的 Array.prototype.includes() 方法。这个新方法是判断一个数组是否包含某个元素的最简单方法之一,同时也比 Array.prototype.indexOf() 方法更直观和易用。
现在你已经了解了 Array.prototype.includes() 方法的基础知识和使用方法,开发时可以更加方便地判断数组中的元素,因此可以提高开发效率。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/658642e5d2f5e1655d0a32e8