附录B、了解ECMAScript 2016

1、指数运算符
    Math.pow()方法可以执行求幂运算。
    a ** b也可以求幂运算。

let result = 5 ** 2;
console.log(result);		// 25
console.log(result === Math.pow(5,2));	// true

    ①、运算顺序
        求幂运算符在js所有二进制运算符中具有最高的优先级(一元运算符的优先级高于**)。

let result = 2*5**2;
console.log(result);		// 50

    ②、运算限制
        求幂运算符左侧的表达式只能使用++或--,其他情况要使用括号。

let num1 = 2,num2 = 2;
console.log(++num1 ** 2);	// 9
console.log(num1);			// 3
console.log(num2-- ** 2);	// 4
console.log(num2);			// 1

2、Array.prototype.includes()方法
    String.prototype.includes():检查给定字符串中是否存在某些子字符串。

    ①、使用Array.prototype.includes()方法
        两个参数:要搜索的值和可选的开始搜索的索引位置,找到返回true,否则返回false。

let values = [1,2,3];
console.log(values.includes(1));		// true
console.log(values.includes(0));		// false
console.log(values.includes(1,2));		// false

    ②、值的比较

let values = [1,NaN,3];
console.log(values.indexOf(NaN));		// -1
console.log(values.includes(NaN));		// true

        两个方法底层使用的比较机制不同。

let values = [1,+0,2];
console.log(values.indexOf(-0));		// 1
console.log(values.includes(-0));		// true
console.log(Object.is(+0,-0));			// false

3、函数作用域严格模式的一处改动
    ECMAScript规定:在函数的形参被解构或者有默认参数时,函数中禁止使用"use strict"指令。

发布了247 篇原创文章 · 获赞 23 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/LiyangBai/article/details/103657236