在前端开发中,经常需要对数组进行操作。其中,查找数组中是否包含某个元素是一项非常常见的操作。在 ES6 中,我们可以使用 Array.prototype.indexOf 方法来实现。但是,在 ES7 中,我们有了更好的选择,那就是使用 Array.prototype.includes 方法。
Array.prototype.indexOf 方法
Array.prototype.indexOf 方法用于查找数组中是否包含某个元素,并返回该元素在数组中的位置。如果没有找到该元素,则返回 -1。
----- --- - --- -- -- -- --- ----- ----- - --------------- -- ----- - -
虽然这个方法很好用,但是它有一些缺点。首先,它只能返回元素在数组中的位置,而不能返回该元素是否存在于数组中。其次,它在查找字符串时需要注意大小写问题。
Array.prototype.includes 方法
Array.prototype.includes 方法用于查找数组中是否包含某个元素,并返回一个布尔值,表示该元素是否存在于数组中。
----- --- - --- -- -- -- --- ----- ------ - ---------------- -- ------ - ----
与 indexOf 方法不同,includes 方法不需要关心元素在数组中的位置,只需要判断元素是否存在即可。而且,它可以正确地处理字符串的大小写问题。
----- --- - --------- --------- ---------- ----- ------ - ---------------------- -- ------ - -----
使用 Array.prototype.includes 的好处
使用 Array.prototype.includes 方法有以下好处:
- 代码更加简洁:不需要判断返回值是否为 -1。
- 更加直观:返回一个布尔值,表示该元素是否存在于数组中。
- 更加可读性强:代码更加易于理解。
示例代码
下面是一个使用 Array.prototype.includes 方法的示例代码:
----- --- - --------- --------- ---------- ----- ----- - -------- -- --------------------- - --------------------- ------ -- --- -------- - ---- - --------------------- ---- --- ----- -- --- -------- -
总结
在 ES7 中,我们可以使用 Array.prototype.includes 方法来代替 indexOf 方法,实现更加简洁、直观、可读性强的代码。因此,在日常的开发中,我们应该尽可能地使用 includes 方法来查找数组中是否包含某个元素。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/660b5febd10417a222b7e7e4