Array.prototype.includes()
# Array.prototype.includes()与indexOf()比较:由于它对NaN的处理方式与indexOf不同,假如你只想知道某个值是否在数组中而并不关心它的索引位置,建议使用includes()。如果你想获取一个值在数组中的位置,那么你只能使用indexOf方法。includes() 方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回false。NAN == NAN // true includes NAN == NAN // false indexOf代码如下:const array1 = [1, 2, 3]console.log(array1.includes(2)) // trueconst pets = ['cat', 'dog', 'bat']console.log(pets.includes('cat')) // trueconsole.log(pets.includes('at')) // false
幂运算符**
# 幂运算符**,具有与Math.pow()一样的功能,代码如下:console.log(2**10) // 1024console.log(Math.pow(2, 10)) // 1024
模板字符串(Template string)
# 自ES7起,带标签的模版字面量遵守以下转义序列的规则:•Unicode字符以"\u"开头,例如\u00A9•Unicode码位用"\u{}"表示,例如\u{2F804}•十六进制以"\x"开头,例如\xA9•八进制以""和数字开头,例如\251这表示类似下面这种带标签的模版是有问题的,因为对于每一个ECMAScript语法,解析器都会去查找有效的转义序列,但是只能得到这是一个形式错误的语法:latex`\unicode`// 在较老的ECMAScript版本中报错(ES2016及更早)// SyntaxError: malformed Unicode character escape sequence