随着 JavaScript 开发在前端领域的广泛应用,ES8 中新增的 Array.prototype.includes()
方法在开发过程中也越来越受到关注。该方法可以返回一个布尔值,表示数组是否包含了指定的值。正确的使用该方法可以提高代码效率,本文将深入介绍该方法,并提供相关的示例代码。
Array.prototype.includes() 方法的语法
Array.prototype.includes()
方法接受一个参数,即需要被查找的值。该方法会遍历整个数组,并返回一个布尔值,表示数组中是否包含了值。该方法的语法如下:
array.includes(searchElement[, fromIndex])
其中:
array
:需要被搜索的数组。searchElement
:需要被查找的值。fromIndex
:可选参数,表示从什么位置开始搜索。如果该参数为负数,则从右边开始搜索。
Array.prototype.includes() 方法的使用示例
假设我们有一个名字数组,需要查找其中是否包含某个名字。下面是一个示例代码:
const names = ['Alice', 'Bob', 'Charlie', 'David']; if (names.includes('Charlie')) { console.log('Charlie is in the names array.'); } else { console.log('Charlie is not in the names array.'); }
在上面的代码中,我们通过 names.includes('Charlie')
方法来查找数组中是否包含了指定的名字,返回结果为真时,我们打印 "Charlie is in the names array.";否则打印 "Charlie is not in the names array."。
还可以通过指定位置来开始搜索。例如,我们希望从索引为 2 的位置开始查找,下面是相应的代码:
const names = ['Alice', 'Bob', 'Charlie', 'David']; if (names.includes('Charlie', 2)) { console.log('Charlie is in the names array, starting from index 2.'); } else { console.log('Charlie is not in the names array, starting from index 2.'); }
在上面的代码中,我们通过 names.includes('Charlie', 2)
方法来查找从索引为 2 开始的位置是否包含了指定的名字,返回结果为真时,我们打印 "Charlie is in the names array, starting from index 2.";否则打印 "Charlie is not in the names array, starting from index 2."。
Array.prototype.includes() 方法的注意事项
Array.prototype.includes()
方法只能判断出某个值是否在数组中,但不能判断出该值在数组中的索引位置,如果需要获取索引位置,应使用Array.prototype.indexOf()
方法。Array.prototype.includes()
方法的搜索是严格比较,即只有在类型和值都一致的情况下才会返回真值。
结论
正确地使用 ES8 中新增的 Array.prototype.includes()
方法可以提高代码效率和可读性,同时也避免出现因不当判断而导致的错误。需要注意的是,该方法只能判断某个值是否在数组中,并不能获取索引位置,对于需要获取索引位置的情况,应使用 Array.prototype.indexOf()
等相关方法。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6703fecfd91dce0dc84d5062