ES8的Array.prototype.includes()方法

阅读时长 3 分钟读完

在ES6中,JavaScript语言引入了Array.prototype.includes()方法。这个方法很快就成为了开发者的喜爱。继承了ES6的思路,ES8的Array.prototype.includes()方法仍然是一个非常有用的数组操作方法。

在ES8中,Array.prototype.includes()方法被添加了一些新的特性和扩展,可以更加方便地处理数组操作。

基本语法

Array.prototype.includes()方法用于判断一个数组是否包含某个特定的元素,返回一个布尔值。

其中,array表示要被检查的数组,value表示要查找的值。如果找到这个值,返回值为true,否则返回false。

这个方法非常容易使用,简单便捷。

下面,我们来看一些实际使用的例子。

使用示例

查找数组中的元素

上面的代码,定义了一个包含5个元素的数组arr。使用includes()方法查找数字2,返回结果为true;查找数字0,返回结果为false。

查找一个有空值的数组

上面的代码中,数组arr包含一个undefined和一个null。使用includes()方法检查是否有undefined和null,返回结果均为true。查找数字0,返回结果为false。

反向查找数组中的元素

上面的代码,数组arr包含5个元素,其中数字2重复了一次。使用includes()方法查找数字2,从倒数第一位开始查找,返回结果为false;从倒数第二位开始查找,返回结果为true。

检查对象是否在数组中

上面的代码中,定义了一个包含3个对象的数组arr。使用includes()方法查找一个对象,返回结果为false。这是因为数组中的对象不是一个引用,它们的地址不同。

注意事项

1. 参数的使用

和Array.prototype.indexOf()方法不同,includes()方法是可以使用NaN查找的。

2. 向前向后查找

includes()方法支持从头开始和从尾开始查找。

3. 查找对象

当数组元素为对象时,includes()方法比较的是对象的引用,而不是对象的键值。

4. 兼容性问题

虽然这个方法在ES6中就被引入了,但在ES8中才加入了上述的扩展功能,所以一些旧的浏览器并不支持。

总结

尽管看起来Array.prototype.includes()很简单,实际上它有很强大的功能和应用。我们可以使用它高效地处理数组操作,并且还能够从中获取深刻的理解。

在学习和使用中,需要特别注意以上提到的一些细节和注意事项,为此在熟练掌握API的使用之后,我们可以更好地利用它来提高自己的工作效率。

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

纠错
反馈