Raíz cuadrada en JavaScript

En este breve tutorial, aprenda cómo realizar una raíz cuadrada y cúbica en JavaScript, con el objeto Math integrado, y observe los casos extremos en los que podría obtener resultados inesperados.

Introducción

Al desarrollar soluciones matemáticas, responder preguntas de algoritmos o intentar resolver un problema, pueden surgir situaciones que requieran que encontremos la raíz cuadrada de valores específicos en JavaScript.

En este artículo, aprenderemos cómo encontrar la raíz cuadrada de un valor o elemento en JavaScript.

Podemos usar la función estática Math.sqrt() en JavaScript para calcular la raíz cuadrada de cualquier número. Esta función se puede utilizar para calcular la raíz cuadrada de un número positivo y una matriz con un solo elemento. Casi todos los navegadores modernos lo admiten.

Cómo encontrar la raíz cuadrada de un número en JavaScript

Math.sqrt() toma una variable/valor y devuelve su raíz cuadrada, si es un número. Encontremos la raíz cuadrada de 64 y registrémosla en la consola para ilustrar la sintaxis de esta función estática:

1
2
3
4
let num1 = 64;
console.log(Math.sqrt(num1)); // 8
// Or
console.log(Math.sqrt(64)); // 8

Algunos errores comunes y valores aceptados {#algunos errores comunes y valores aceptados}

En las siguientes subsecciones, veremos algunos ejemplos interesantes que nos ayudarán a comprender los valores que se pueden pasar como argumento de Math.sqrt() y el tipo de valores que generarán errores. .

Caso 1: raíz cuadrada de una matriz con un elemento

Supongamos que el valor pasado es una matriz con un solo elemento, Math.sqrt() devuelve la raíz cuadrada de ese elemento:

1
2
3
4
let num1 = [64];
console.log(Math.sqrt(num1)); // 8
// Or
console.log(Math.sqrt([64])); // 8

Caso 2: raíz cuadrada de una matriz con múltiples elementos

Supongamos que el valor o argumento pasado es una matriz que tiene más de un elemento, entonces Math.sqrt() devuelve NaN:

1
2
3
4
let num1 = [64, 4, 16];
console.log(Math.sqrt(num1)); // NaN
// Or
console.log(Math.sqrt([64, 4, 16])); // NaN

Caso 3: raíz cuadrada de valor no numérico

Supongamos que el valor pasado no es un número válido, en este caso, Math.sqrt() devolverá NaN:

1
2
3
4
let myValue = ["John"];
console.log(Math.sqrt(myValue)); // NaN
// Or
console.log(Math.sqrt("John")); // NaN

Caso 4: raíz cuadrada de un número negativo

Podríamos pasar accidentalmente un número negativo como argumento de Math.sqrt(), esto siempre devolverá NaN:

1
2
3
4
let num1 = -64;
console.log(Math.sqrt(num1)); // NaN
// Or
console.log(Math.sqrt(-64)); // NaN

Caso 5: raíz cuadrada de un objeto vacío

Supongamos que pasamos un objeto vacío, devolverá NaN:

1
2
3
4
let value1 = {};
console.log(Math.sqrt(value1)); // NaN
// Or
console.log(Math.sqrt({})); // NaN

Caso 6: la raíz cuadrada en JavaScript devuelve cero

Supongamos que pasamos una matriz vacía, una cadena vacía o null, esto siempre devolverá cero:

1
2
3
4
5
6
7
let value1 = null;
let value2 = "";
let value3 = [];

console.log(Math.sqrt(value1)); // 0
console.log(Math.sqrt(value2)); // 0
console.log(Math.sqrt(value3)); // 0

Caso 7: Raíz cuadrada y operaciones aritméticas

Es importante saber que podemos realizar operaciones aritméticas apropiadas dentro de Math.sqrt(). Siempre que el valor resultante sea válido, devolverá el valor raíz correcto:

1
2
3
4
5
6
7
console.log(Math.sqrt(32 + 32)); // 8
console.log(Math.sqrt(-32 + -32)); // NaN

// Or
let x = 32;
console.log(Math.sqrt(32 + x)); // 8
console.log(Math.sqrt(-32 + -x)); // NaN

Raíz cúbica en JavaScript

JavaScript también proporciona la forma de encontrar la raíz cúbica de un número. Digamos que necesitamos encontrar la raíz cúbica del número 8 - usaremos el método Math.cbrt():

1
2
3
4
5
6
let num1 = 8;
console.log(Math.cbrt(num1)); // 2

// Or

console.log(Math.sqrt(8)); // 2

Conclusión

En este artículo, hemos visto la forma estándar de obtener la raíz cuadrada de un valor válido con JavaScript, también hemos visto posibles errores y los valores que se devolverán. Esto nos ayudará a la hora de escribir nuestro programa y nos facilitará la detección de errores.