当前位置: 首页 > Web前端 > HTML5

深入理解ES6的《ES7》

时间:2023-04-05 23:08:59 HTML5

指数运算符Math.pow是求幂运算符,可以进行求幂运算求幂运算符是两个星号letresult=5**2console.log(result)//25console.log(result===Math.pow(5,2))//true求幂运算符比其他二元运算符优先级高,但是一元运算符比求幂运算符优先级高letresult=2*5**2console.log(result)//50求幂运算左边的一元运算符运算符只能是++或--letresult=-5**2//语法错误letresult=-(5**2)//可以这样包裹letresult=(-5)**2//你也可以这样包裹Array.prototype.includes。在ES6中,您可以使用String.prototype.includes方法来检查给定字符串中是否存在某些子字符串。Array.prototype.includes接受两个Parameter要搜索的值的索引位置(可选)letvalues=[1,2,3]console.log(values.includes(1))//trueconsole.log(values.includes(0))//falseconsole.log(values.includes(1,2))//false使用includes进行值比较时,===操作符的使用只有一个例外:即使NaN===NaN的计算结果为false,NaN也被认为等于NaN,这与indexOf方法的行为不同,后者严格使用===进行比较letvalues=[1,NaN,2]console.log(values.indexOf(NaN))//-1console.log(values.includes(NaN))//true还有一个奇怪的地方就是+0和-0不管是在indexOf还是在includesletvalues=[1,+0,2]console.log(values.indexOf(-0))//-1console.log(values.includes(-0))//false--后来发现测试居然是真的。函数范围严格模式的变化仍然可以在ES6中使用”usestrict”指令指定严格模式ES7声明函数中只能使用不包含解构或默认值的简单参数列表。“usestrict”functionokay(first,second){“usestrict”returnfirst}//这里抛出语法错误functionnotOkay1(first,second=first){"usestrict"returnfirst}