ES7 中的 Array.prototype.includes:避免使用 indexOf

ES7 中的 Array.prototype.includes:避免使用 indexOf

在 JavaScript 中,Array.prototype.includes 是 ES7 中新增的一个方法,它可以用来判断一个数组是否包含某个元素。与 indexOf 不同的是,includes 不会返回索引,而是返回一个布尔值。

在本文中,我们将深入探讨 Array.prototype.includes 的用法以及其与 indexOf 的区别,并提供示例代码来帮助您更好地理解。

  1. 基本语法

Array.prototype.includes 的基本语法如下:

其中,arr 是要进行查找的数组,searchElement 是要查找的元素,fromIndex 是可选的,表示要从数组的哪个索引开始查找。

如果数组中包含 searchElement,includes 返回 true,否则返回 false。

  1. 与 indexOf 的区别

与 indexOf 不同的是,includes 不会返回元素的索引,而是返回一个布尔值。这意味着,如果您只需要知道一个元素是否在数组中,那么 includes 更适合使用。

另外,includes 还有一个优点,就是它可以正确处理 NaN 和 undefined。例如:

而使用 indexOf 则会返回 -1。

  1. 示例代码

以下是一些示例代码,展示了 includes 的用法以及其与 indexOf 的区别。

  1. 总结

在本文中,我们深入探讨了 ES7 中新增的 Array.prototype.includes 方法的用法以及其与 indexOf 的区别。我们发现,includes 更适合用于查找元素是否存在于数组中,并且可以正确处理 NaN 和 undefined。

因此,我们建议在需要判断一个元素是否存在于数组中时,尽可能使用 includes 方法,避免使用 indexOf。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65718279d2f5e1655da2dc19


纠错
反馈