es7的新特性:
新增特性:
Array.prototype.includes()
**
1) Array.prototype.includes()
用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回false。
参数
接收两个参数
1.要搜索的值
2.搜索的开始索引
与indexof的区别
1.返回值不同,indexof返回是值型的,includes返回值是布尔型的
2.NaN的判断,如果数组中有NaN,indexof无法判断出来,但是includes可以
3.当数组的有空的值的时候,includes会认为空的值是undefined,而indexOf不会
2) ** 求幂运算符
可以使用**来替代Math.pow。
4 ** 3 // 64
Math.pow(4,3) // 64
但是,**还支持以下操作
let n = 4;
n **= 3;
// 64
es8 新特性
主要新功能:
新增特性
主要特性
异步函数 Async Functions
共享内存和Atomics
次要特性
Object.values / Object.entries
String padding
Object.getOwnPropertyDescriptors()
函数参数列表和调用中的尾逗号
es9 新特性
新增特性
主要特性
异步迭代
Rest/Spread 属性
新的正则表达式功能
RegExp named capture groups
RegExp Unicode Property Escapes
RegExp Lookbehind Assertions
s (dotAll) flag for regular expressions
其他新功能
Promise.prototype.finally()
模板字符串修改