前言
在这个快速发展的时代,前端技术也在日新月异的变化。ES6 和 ES7 都是前端开发不可或缺的重要技术,ES7 中引入了一种新的方法:Array.prototype.includes(),它是用来判断数组中是否包含某个特定的值,返回的是一个布尔值。本篇文章将详细介绍这个方法的使用,包括方法的参数、返回值、特点以及在实际开发中的应用。
语法
Array.prototype.includes() 是一个数组对象的实例方法,它的语法如下:
---------------------------- -----------
其中,arr
指代的是当前的数组对象,searchElement
是需要查找的元素,fromIndex
是可选的,表示从哪个索引开始查找。
返回值
Array.prototype.includes() 的返回值是布尔类型,如果给定的元素在数组中存在,则返回 true
,否则返回 false
。
特点
Array.prototype.includes() 方法具有以下两个特点:
- 使用严格等于运算符(===),会将 NaN 和 NaN 看作是相等的。
- 可以处理类数组对象,但不能处理字符串,需要使用 String.prototype.includes()。
示例
查找一个数值是否存在于数组中,可以使用 Array.prototype.includes() 方法。
----- --- - --- -- -- -- --- ----------------------------- -- ---- ----------------------------- -- -----
当 fromIndex
参数被传入时,会从指定的索引开始查找。
----- --- - ----- ---- ---- ----- ------------------------------- -- ---- ----------------------------- ---- -- ----- ----------------------------- ----- -- -----
在上面的代码中,第一个 console.log()
输出 true
,因为 'c' 存在于数组中。第二个 console.log()
传入了 fromIndex
参数为 2,即从索引 2 开始查找,但是 'c' 在这个索引之前,返回 false
。第三个 console.log()
传入了一个负数为 fromIndex
参数,表示从 arr.length - 2
的索引开始查找,仍然是找不到 'c',返回 false
。
处理类数组对象时,可以使用 Array.prototype.includes() 方法。
----- --- - --- ---- -- ---- -- ---- ------- --- ---------------------------------------------- ------ -- ---- ---------------------------------------------- ------ -- -----
在上面的代码中,我们创建了一个类数组对象,使用 Array.prototype.includes.call() 方法,将其转换成数组并使用 Array.prototype.includes() 方法进行查找,结果输出为 true
和 false
。如果要处理字符串,需要使用 String.prototype.includes()。
应用
Array.prototype.includes() 方法可以用于判断数组中是否包含某个元素,可以在条件语句中进行选择操作。
-- ------------------- - -- -- --------- - ---- - -- -- --------- ---- -
在上面的代码中,我们可以根据数组中是否包含 'X' 来分别执行两种操作。
总结
以上就是 ES7 中 Array.prototype.includes() 方法的使用详解,包括了语法、返回值和特点,以及一些实际应用。在实际开发中,这个方法可以极大的提高开发的效率,也可以使代码更加简洁易读。在使用时需要注意其特殊的处理规则,灵活运用可以让代码更加优雅。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/64cf221cb5eee0b525692e58