Resumo : neste tutorial, você aprenderá como usar o operador de exponenciação JavaScript ( **
) para elevar um número à potência de um expoente.
Introdução ao operador de exponenciação JavaScript
Para elevar um número à potência de um expoente, geralmente você usa o método estático Math.pow()
com a seguinte sintaxe:
Math.pow(base, exponent)
Linguagem de código: JavaScript ( javascript )
Por exemplo:
let result = Math.pow(2,2);
console.log(result); // 4
result = Math.pow(2,3);
console.log(result); // 8
Linguagem de código: JavaScript ( javascript )
ECMAScript 2016 forneceu uma maneira alternativa de obter uma base para a potência do expoente usando o operador de exponenciação ( **
) com a seguinte sintaxe:
x**n
O operador **
eleva o x
à potência de um expoente n
.
Observe que alguns idiomas usam o símbolo de circunflexo ^
para exponenciação. No entanto, o JavaScript já usa esse símbolo para o operador lógico XOR bit a bit.
O exemplo a seguir ilustra como usar o operador de exponenciação ( **
):
let result = 2 ** 2;
console.log(result); // 4
result = 2 ** 3;
console.log(result); // 8
Linguagem de código: JavaScript ( javascript )
O Math.pow()
aceita um valor e o converte em um valor do tipo numérico para cálculo. Da mesma forma, o operador **
aceita valores do number
tipo. Além disso, o operador **
aceita um valor do bigint
tipo. Por exemplo:
let result = 2n ** 3n;
console.log(result); // 8n
Linguagem de código: JavaScript ( javascript )
Além disso, você pode usar o operador de exponenciação ( **
) na notação infixa. Por exemplo:
let x = 2;
x **= 4;
console.log(x); // 16
Linguagem de código: JavaScript ( javascript )
JavaScript não permite colocar um operador unário imediatamente antes do número base. Se você tentar fazer isso, você receberá um arquivo SyntaxError
.
O exemplo a seguir causa um erro de sintaxe:
let result = -2**3;
Linguagem de código: JavaScript ( javascript )
Erro:
Uncaught SyntaxError: Unary operator used immediately before exponentiation expression. Parenthesis must be used to disambiguate operator precedence
Linguagem de código: JavaScript ( javascript )
Para corrigir isso, você usa parênteses como este:
let result = (-2)**3;
console.log(result); // -8
Linguagem de código: JavaScript ( javascript )
Resumo
- O operador de exponenciação
**
eleva um número à potência de um expoente. - O operador de exponenciação
**
aceita valores do tiponumber
oubigint
.