Operador de exponenciação JavaScript

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); // 8Linguagem 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); // 8Linguagem 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 numbertipo. Além disso, o operador **aceita um valor do biginttipo. Por exemplo:

let result = 2n ** 3n;
console.log(result); // 8nLinguagem 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); // 16Linguagem 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 precedenceLinguagem de código:  JavaScript  ( javascript )

Para corrigir isso, você usa parênteses como este:

let result = (-2)**3;
console.log(result); // -8Linguagem 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 tipo numberou bigint.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *