新提出来的特性是将 **
作为指数操作的中缀运算符:
x ** y
与以下表达式运算结果相同:
Math.pow(x, y)
示例:
let power = 3 ** 2; // 3的2次方,即 3 * 3
console.log(power) // 9
let num = 3;
num **= 2; // 另一种写法
console.log(num); // 9
要注意的一点是这个运算符的一个特点是右结合,而不是常见的左结合。多个指数运算符连用时,是从最右边开始计算的。
如:
let c = 2 ** 3 ** 2 // 相当于 2 ** (3 ** 2);
let d = 2 ** 2 ** 3 // (2 ** 2 ** 3) === 2 ** (2 ** 3) === 2 ** 8
console.log(c)//512
console.log(d)//256