ES7 中的 Array.prototype.includes 方法是一个非常实用的新特性。它可以让你快速检查一个数组是否包含指定的元素,避免了使用 indexOf 方法需要的一些额外步骤。在本文中,我们将详细讲解这个方法,包括语法、用法以及示例代码。
语法
下面是 Array.prototype.includes 方法的语法:
array.includes(searchElement[, fromIndex])
其中,array 表示需要使用该方法的数组;searchElement 表示需要查找的元素;fromIndex(可选项)表示开始查找的索引位置。如果省略了 fromIndex 参数,则默认从索引位置 0 开始查找。
该方法的返回值为布尔类型,如果数组中包含指定元素,则返回 true,否则返回 false。
用法
Array.prototype.includes 方法的用法非常简单,只需将需要查找的元素作为参数传递给它即可。例如:
let arr = [1, 2, 3, 4, 5]; console.log(arr.includes(3)); // true console.log(arr.includes(6)); // false
如果我们需要在指定位置开始查找元素,可以将想要的起始索引作为第二个参数传递给该方法。例如:
let arr = [1, 2, 3, 4, 5]; console.log(arr.includes(3, 2)); // true
在上面的代码中,我们希望从索引位置 2 开始查找元素 3,因此该方法返回了 true。
需要注意的是,如果指定的起始索引大于等于数组的长度,那么该方法始终返回 false。例如:
let arr = [1, 2, 3, 4, 5]; console.log(arr.includes(1, 10)); // false
在上面的代码中,虽然数组包含元素 1,但是因为我们指定的起始索引 10 大于等于数组的长度,因此该方法返回了 false。
示例代码
下面是一些使用 Array.prototype.includes 方法的示例代码:
检查数组中是否包含指定元素
let arr = [1, 2, 3, 4, 5]; if (arr.includes(3)) { console.log('数组中包含元素 3'); } else { console.log('数组中不包含元素 3'); }
从指定位置开始检查数组中是否包含指定元素
let arr = [1, 2, 3, 4, 5]; if (arr.includes(3, 2)) { console.log('数组中从索引 2 开始包含元素 3'); } else { console.log('数组中不从索引 2 开始包含元素 3'); }
检查数组是否包含某个值
let arr = ['apple', 'banana', 'orange']; if (arr.includes('apple')) { console.log('数组中包含 apple'); } else { console.log('数组中不包含 apple'); }
结论
Array.prototype.includes 方法是 ES7 中非常实用的特性之一。它可以让你快速检查数组中是否包含指定的元素,避免了使用 indexOf 方法需要的一些额外步骤。因此,在编写前端工程时,我们应该充分利用这个方便、快捷的方法,提高我们的开发效率。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/672c8a4cddd3a70eb6d88ac4