μμ£Όμ¨ PI κ°μ λ°ννλ€.
Math.PI; // -> 3.141592653589793
Math.abs λ©μλλ μΈμλ‘ μ λ¬λ μ«μμ μ λκ°μ λ°ννλ€.
Math.abs(-1); // -> 1
Math.abs('-1'); // -> 1
Math.abs(''); // -> 0
Math.abs([]); // -> 0
Math.abs(null); // -> 0
Math.abs(undefined); // -> NaN
Math.abs({}); // -> NaN
Math.abs('string'); // -> NaN
Math.abs(); // -> NaN
Math.round λ©μλλ μΈμλ‘ μ λ¬λ μ«μμ μμμ μ΄νλ₯Ό λ°μ¬λ¦Όν μ μλ₯Ό λ°ννλ€.
Math.round(1.4); // -> 1
Math.round(1.6); // -> 2
Math.round(-1.4); // -> -1
Math.round(-1.6); // -> -2
Math.round(1); // -> 1
Math.round(); // -> NaN
Math.ceil λ©μλλ μΈμλ‘ μ λ¬λ μ«μμ μμμ μ΄νλ₯Ό μ¬λ¦Όν μ μλ₯Ό λ°ννλ€.
Math.ceil(1.4); // -> 2
Math.ceil(1.6); // -> 2
Math.ceil(-1.4); // -> -1
Math.ceil(-1.6); // -> -1
Math.ceil(1); // -> 1
Math.ceil(); // -> NaN
Math.floor λ©μλλ μΈμλ‘ μ λ¬λ μ«μμ μμμ μ΄νλ₯Ό λ΄λ¦Όν μ μλ₯Ό λ°ννλ€.
Math.floor(1.9); // -> 1
Math.floor(9.1); // -> 9
Math.floor(-1.9); // -> -2
Math.floor(-9.1); // -> -10
Math.floor(1); // -> 1
Math.floor(); // -> NaN
Math.sqrt λ©μλλ μΈμλ‘ μ λ¬λ μ«μμ μ κ³±κ·Όμ λ°ννλ€.
Math.sqrt(9); // -> 3
Math.sqrt(-9); // -> NaN
Math.sqrt(2); // -> 1.414213562373095
Math.sqrt(1); // -> 1
Math.sqrt(0); // -> 0
Math.sqrt(); // -> NaN
Math.random λ©μλλ μμμ λμ(λλ€ μ«μ)λ₯Ό λ°ννλ€. λμλ 0μμ 1 λ―Έλ§μ μ€μμ΄λ€.
Math.random(); // 0μμ 1 λ―Έλ§μ λλ€ μ€μ(0.8208720231391746)
/*
1μμ 10 λ²μμ λλ€ μ μ μ·¨λ
1) Math.randomμΌλ‘ 0μμ 1 λ―Έλ§μ λλ€ μ€μλ₯Ό ꡬν λ€μ, 10μ κ³±ν΄ 0μμ 10 λ―Έλ§μ
λλ€ μ€μλ₯Ό ꡬνλ€.
2) 0μμ 10 λ―Έλ§μ λλ€ μ€μμ 1μ λν΄ 1μμ 10 λ²μμ λλ€ μ€μλ₯Ό ꡬνλ€.
3) Math.floorλ‘ 1μμ 10 λ²μμ λλ€ μ€μμ μμμ μ΄νλ₯Ό λΌμ΄ λ²λ¦° λ€μ μ μλ₯Ό λ°ννλ€.
*/
const random = Math.floor((Math.random() * 10) + 1);
console.log(random); // 1μμ 10 λ²μμ μ μ
Math.pow λ©μλλ 첫 λ²μ§Έ μΈμλ₯Ό λ°(base)μΌλ‘, λ λ²μ§Έ μΈμλ₯Ό μ§μ(exponent)λ‘ κ±°λμ κ³±ν κ²°κ³Όλ₯Ό λ°ννλ€.
Math.pow(2, 8); // -> 256
Math.pow(2, -1); // -> 0.5
Math.pow(2); // -> NaN
ES7μμ λμ λ μ§μ μ°μ°μλ₯Ό μ¬μ©νλ©΄ κ°λ μ±μ΄ λ μ’λ€.
// ES7 μ§μ μ°μ°μ
2 ** 2 ** 2; // -> 16
Math.pow(Math.pow(2, 2), 2); // -> 16
Math.max λ©μλλ μ λ¬λ°μ μΈμ μ€μμ κ°μ₯ ν° μλ₯Ό λ°ννλ€. μΈμκ° μ λ¬λμ§ μμΌλ©΄ -Infinityλ₯Ό λ°ννλ€.
Math.max(1); // -> 1
Math.max(1, 2); // -> 2
Math.max(1, 2, 3); // -> 3
Math.max(); // -> -Infinity
λ°°μ΄μ μΈμλ‘ μ λ¬λ°μ λ°°μ΄μ μμμ€μμ μ΅λκ°μ ꡬνλ €λ©΄ Function.prototype.apply λ©μλ λλ μ€νλ λ λ¬Έλ²μ μ¬μ©ν΄μΌ νλ€.
// λ°°μ΄ μμ μ€μμ μ΅λκ° μ·¨λ
Math.max.apply(null, [1, 2, 3]); // -> 3
// ES6 μ€νλ λ λ¬Έλ²
Math.max(...[1, 2, 3]); // -> 3
Math.min λ©μλλ μ λ¬λ°μ μΈμ μ€μμ κ°μ₯ μμ μλ₯Ό λ°ννλ€. μΈμκ° μ λ¬λμ§ μμΌλ©΄ Infinityλ₯Ό λ°ννλ€.
Math.min(1); // -> 1
Math.min(1, 2); // -> 1
Math.min(1, 2, 3); // -> 1
Math.min(); // -> Infinity
λ°°μ΄μ μΈμλ‘ μ λ¬λ°μ λ°°μ΄μ μμμ€μμ μ΅μκ°μ ꡬνλ €λ©΄ Function.prototype.apply λ©μλ λλ μ€νλ λ λ¬Έλ²μ μ¬μ©ν΄μΌ νλ€.
// λ°°μ΄ μμ μ€μμ μ΅μκ° μ·¨λ
Math.min.apply(null, [1, 2, 3]); // -> 1
// ES6 μ€νλ λ λ¬Έλ²
Math.min(...[1, 2, 3]); // -> 1