El Objeto Math
Math es un objeto incorporado que tiene propiedades y métodos para constantes y funciones
matemáticas. No es un constructor (no se usa new).
Constantes
console.log(Math.PI); // 3.14159...
console.log(Math.E); // 2.718... (Número de Euler)
Redondeo
Math.round(x): Redondea al entero más cercano.Math.ceil(x): Redondea hacia arriba (techo).Math.floor(x): Redondea hacia abajo (suelo).Math.trunc(x): Elimina la parte decimal.
Math.round(4.6); // 5
Math.ceil(4.1); // 5
Math.floor(4.9); // 4
Math.trunc(4.9); // 4
Potencias y Raíces
Math.pow(8, 2); // 64 (8 elevado a 2)
Math.sqrt(64); // 8 (Raíz cuadrada)
Math.abs(-5); // 5 (Valor absoluto)
Mínimo y Máximo
Math.min(0, 150, 30, 20, -8); // -8
Math.max(0, 150, 30, 20, -8); // 150
Aleatoriedad
Math.random() devuelve un número aleatorio entre 0 (inclusive) y 1 (exclusive).
let azar = Math.random();
// Para un número entre 0 y 9:
let entero = Math.floor(Math.random() * 10);
Métodos de Number
JavaScript tiene solo un tipo de número (64-bit Floating Point). Aquí hay métodos útiles para manejarlos.
Convertir a String
let x = 123;
x.toString(); // "123"
(100 + 23).toString(); // "123"
Decimales Fijos
toFixed(n) devuelve un string con el número escrito con n decimales. Ideal para
dinero.
let precio = 9.656;
precio.toFixed(0); // "10"
precio.toFixed(2); // "9.66"
Precisión
toPrecision(n) devuelve un string con el número escrito con una longitud específica.
let num = 9.656;
num.toPrecision(2); // "9.7"
Convertir Variables a Números
Funciones globales (no métodos de Number, pero relacionadas):
Number(): Convierte a número.parseInt(): Convierte a entero.parseFloat(): Convierte a flotante.
Number("10"); // 10
Number(" 10 "); // 10
parseInt("10.33"); // 10
parseFloat("10.33"); // 10.33
Propiedades de Number
Number.MAX_VALUE; // El número más grande posible en JS
Number.MIN_VALUE; // El más pequeño
Number.POSITIVE_INFINITY; // Infinity
Number.NaN; // Not a Number