ES7 (ES2016)

Array.prototype.includes()

定义

includes() 方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。

语法

参数说明

参数描述
searchElement必须。需要查找的元素值。
fromIndex可选。从该索引处开始查找 searchElement。如果为负值,则按升序从 array.length + fromIndex 的索引开始搜索。默认为 0

用法

1.基本用法

2.接收俩个参数:要搜索的值 和 搜索的开始索引

如果fromIndex 大于等于数组长度 ,则返回 false 。该数组不会被搜索:

fromIndex为负值时,则会按升序从 array.length + fromIndex 的索引开始搜索

array.length + fromIndex = 3+(-1)=2,则从数组索引值为2开始搜索

与indexOf()的比较

 

优缺点比较

includes()返回的是布尔值,能直接判断数组中存不存在这个值,而indexOf()返回的是索引,这一点上前者更加方便。

indexOf()处理NaN时是-1,includes()处理NaN时是true

总结

由于两者对NaN的处理方式与indexOf不同

只想知道某个值是否在数组中而并不关心它的索引位置,建议使用includes()

只想获取一个值在数组中的位置,那么你只能使用indexOf方法。

求幂运算符

基本用法

3**2 等同于 Math.pow(3, 2) ,3[^2] = 9

3**2 = 3[^2] = 9

2**9 = 2[^9] = 512