Como usar Math Pow em JavaScript?

JavaScript fornece uma ampla gama de funções para uso rápido e simples de expressões matemáticas. Uma das funções mais utilizadas é Math.pow(). Ele permite que você calcule a potência de um número.

A Math.pow() função aceita dois argumentos obrigatórios. O primeiro parâmetro é uma base - o número para o qual você precisa que o poder seja calculado. O segundo é um número que especifica o expoente. Por exemplo, se você chamar Math.pow (4, 3), a função retornará o resultado da computação 4*4*4 que é 64. 

Observe que esta função é estática. É por isso que você não deve tentar criar um objeto de Math para chamá-lo (a propósito Math , não tem um construtor). A maneira correta de usar a função é diretamente chamando Math.pow (base, exponent) conforme mostrado no exemplo abaixo .

console.log(Math.pow(3, 3));

A função funciona perfeitamente bem com números positivos e negativos como base. Ele também pode aceitar números com ponto flutuante, números escritos em uma forma científica (exponencial) ou até mesmo strings numéricas. 

A Math.pow() função pode reconhecer números representados em um sistema hexadecimal, mas o resultado retornado seria escrito em decimal. Todos esses casos são ilustrados no exemplo a seguir.  

console.log(Math.pow(2.5, 2)); console.log(Math.pow('-1.5', '3')); console.log(Math.pow(2e21, 2)); console.log(Math.pow(0x1b, 1/3));

Tenha em mente que tomar 0 como um expoente sempre retornará 1 em um resultado. Passar valores não numéricos para esta função levará ao NaN retorno como resultado.

Você pode usar esta função para calcular raízes quadradas e outros radicais passando um número fracionário como argumento para o expoente. Para entender como escolher o expoente correto para calcular certas raízes, você precisa se aprofundar um pouco na matemática.

Qualquer número fracionário consiste em um numerador (que está acima da linha) e um denominador (o número abaixo da linha). Ao usar frações como expoentes, apenas observe que o numerador corresponde a uma potência e um denominador corresponde a uma raiz. 

Você pode fazer seu programa calcular a raiz quadrada simplesmente chamando Math.pow(4, 0.5), Math.pow(4, 1/2) ou Math.sqrt(4)- calculando a raiz quadrada. Esses dois formatos levarão ao mesmo resultado.

console.log(Math.pow(4, 0.5)); console.log(Math.pow(4, 1/2)); console.log(Math.sqrt(4));

Tenha em mente que, de acordo com uma lei matemática, ao calcular uma raiz par, a base não pode ser negativa. Portanto, se você tentar chamar a Math.pow() função com o primeiro parâmetro menor que zero e o segundo argumento representado por um número fracionário, NaN será retornado como resultado. 

console.log(Math.pow(-16, 1/2)); console.log(Math.pow(-16, 1/4));

Embora a Matemática permita calcular raízes ímpares de números negativos, a Math.pow() função não é capaz disso. Por exemplo, o resultado da execução Math.pow (-27, 1/3) será NaN, embora após o cálculo manual você obterá -3. 

Existem duas maneiras de resolver esse problema. Em primeiro lugar, você pode usar uma função Math.cbrt() interna para cálculo rápido de uma raiz cúbica. 

console.log(Math.cbrt(-27));

A segunda maneira é um pouco mais complicada, mas também mais geral. Isso é criar sua própria função. O uso de um operador ternário pode ser muito útil para este propósito. 

Para calcular a raiz cúbica de um número, você pode fazer uma função aceitando apenas um parâmetro - a base. Em seguida, verifique se é positivo ou negativo. Se o número for maior que zero ou igual a ele, apenas retorne o resultado do Math.pow(), caso contrário - chame a mesma função mas com um argumento oposto e depois multiplique o resultado por -1.

function cube_root(x) { return x >= 0 ? Math.pow(x, 1/3): - Math.pow(-x,1/3); } console.log(cube_root(-27));

Você pode tornar a função mais universal passando dois argumentos em vez de um e verificando-os internamente.

Em Matemática, o expoente também pode ter um valor negativo. Nesse caso, mostra quantas vezes você precisa dividir 1 pelo número especificado. Por exemplo, calcular 4-2 é o mesmo que 1/42. A Math.pow() função também é capaz de realizar tais cálculos. Assim, para este exemplo, ele retornará 0,0625 como resultado.

console.log(Math.pow(4, -2));

Além disso, Math.pow() pode lidar facilmente com expoentes fracionários negativos. Por exemplo, se você tomar -1/2 como expoente e 16 como base para esta função, ela retornará o resultado da divisão 1 por uma raiz quadrada de 16 que é 0,25.

console.log(Math.pow(16, -1/2));

Além disso, pode haver algumas situações em que a função retorna um resultado bastante confuso. Por exemplo, se você tentar calcular 10 a uma potência de menos cinco, em vez do esperado 0,00001, a Math.pow() função retornará um número estranho 0,000009999999999999999. 

A razão para isso é a maneira como o JavaScript armazena números (usando o padrão IEE755). É por isso que, em alguns casos, você pode querer usar funções para arredondamento adicionalmente.

console.log(Math.pow(10, -5));

Operador de exponenciação ES7

Um dos recursos menores introduzidos no EcmaScript2017(ES7) é o operador de exponenciação.

O operador de exponenciação (**) é equivalente Math.pow() e retorna o resultado da elevação do primeiro operando à potência do segundo operando. A principal diferença - ele também aceita BigInts como operandos.

console.log(Math.pow(Math.pow(2, 3), 2)); console.log((2 3) 2);

Conclusão

A Math.pow() função é uma ferramenta muito poderosa para calcular a potência do número. Ele pode trabalhar com expoentes positivos, negativos e fracionários, o que o torna muito flexível. No entanto, ele não é capaz de calcular raízes de números negativos, portanto, talvez seja necessário criar sua própria função para esse fim ou usar a Math.cbrt() função interna para calcular uma raiz cúbica.

Última postagem

Tag