指数运算符
es6新特性将 **
作为指数操作的中缀运算符:
x ** y
// 表示y个x相乘
与以下表达式运算结果相同:
Math.pow(x, y)
指数运算又叫幂运算,在aⁿ(a≠0)中,a为底数,n为指数,指数位于底数的右上,指数运算表示指数个底数相乘。
示例
:
let num1 = 2 ** 3
// (2 ** 3) === (2 * 2 * 2)
console.log(num1) // 8
let num2 = 2 ** 4
// (2 ** 4) === (2 * 2 * 2 * 2)
console.log(num2) // 16
let num3 = 4
num3 **= 2
// same as: num3 = num3 * num3 ;
console.log(num3) // 16
var num4 = 3
num4 **= 3
// same as: num4 = num4 * num4 * num4;
console.log(num4) // 27
注意:指数运算符的一个特点是右结合,而不是常见的左结合。多个指数运算符连用时,是从最右边开始计算的。
示例
:
let num5 = 2 ** 3 ** 2
// (2 ** 3 ** 2) === (2 ** (3 ** 2))
console.log(num5) // 512