O objeto Math proporciona métodos e propriedades para executação de tarefas matemáticas com números.

var pi = Math.PI;            // pi === 3.141592653589793

Sem Construtor

O objeto Math não tem construtor, diferente de outros objetos globais.

Métodos e propriedades são estáticos e podem ser executados diretamente a partir do objeto Math.

Métodos

O Método Math.round()

Math.round(x) retorna o valor de x arredondado para o número inteiro mais próximo.

var x = Math.round(4.7);    // x === 5
var y = Math.round(4.4);    // y === 4

O Método Math.pow()

Math.pow(x, y) retorna o valor de x à potência de y.

var x = Math.pow(8, 2);      // x === 64

O Método Math.sqrt()

Math.sqrt(x) retorna a raiz quadrada de x.

var x = Math.sqrt(64);      // x === 8

O Método Math.abs()

Math.abs(x) retorna o valor absoluto (positivo) de x.

var x = Math.abs(-4.7);     // x === 4.7

O método Math.ceil()

Math.ceil(x) retorna o valor de x arredondado para cima para seu inteiro mais próximo.

var x = Math.ceil(4.4);     // x === 5

O método Math.floor()

Math.floor(x) retorna o valor de x arredondado para baixo para seu inteiro mais próximo:

var x = Math.floor(4.7);    // x === 4

O método Math.sin()

Math.sin(x) retorna o seno (um valor entre -1 e 1) do ângulo x (dado em radianos).

Se você deseja usar graus em vez de radianos, é necessário converter graus em radianos:

Ângulo em radianos = ângulo em graus x PI / 180.

Math.sin(90 * Math.PI / 180);     // retorna 1 (seno de 90 degrees)

O método Math.cos()

Math.cos(x) retorna o cosseno (um valor entre -1 e 1) do ângulo x (dado em radianos).

Se você deseja usar graus em vez de radianos, é necessário converter graus em radianos:

Ângulo em radianos = ângulo em graus x PI / 180.

Math.cos(0 * Math.PI / 180);     // retorna 1 (coseno de 0 graus)

Os métodos Math.min() e Math.max()

Math.min() e Math.max() podem ser usado para encontrar o valor mais baixo ou mais alto em uma lista de argumentos.

Math.min(0, 150, 30, 20, -8, -200);  // retorna -200
Math.max(0, 150, 30, 20, -8, -200);  // retorna 150

O método Math.random()

Math.random() retorna um número aleatório entre 0 (inclusive) e 1 (exclusivo):

Math.random();     // retorna um número aleatório

Você aprenderá mais Math.random() no próximo capítulo deste tutorial.

Propriedades

JavaScript fornece 8 constantes matemáticas que podem ser acessadas com o objeto Math:

Math.E

retorna o número de Euler

Math.PI

retorna PI

Math.SQRT2

retorna a raiz quadrada de 2

Math.SQRT1_2

retorna a raiz quadrada de 1/2

Math.LN2

retorna o logaritmo natural de 2

Math.LN10

retorna o logaritmo natural de 10

Math.LOG2E

retorna o logaritmo de E na base 2

Math.LOG10E

retorna o logaritmo de E na base 10

Métodos de objetos matemáticos

Método

Descrição

abs(x)

Retorna o valor absoluto de x

acos(x)

Retorna o arco cosseno de x, em radianos

asin(x)

Retorna o arco seno de x, em radianos

atan(x)

Retorna o arco tangente de x como um valor numérico entre -PI/2 e PI/2 radianos

atan2(y, x)

Retorna o arco tangente do quociente de seus argumentos

ceil(x)

Retorna o valor arredondado de x, para o inteiro mais próximo

cos(x)

Retorna o cosseno de x (x em radianos)

exp(x)

Retorna o valor de exp de x

floor(x)

Retorna o valor arredondado de x, para o inteiro mais próximo

log(x)

Retorna o logaritmo natural (base E) de x

max(x, y, z,..., n)

Retorna o número com o maior valor

min(x, y, z,..., n)

Retorna o número com o menor valor

pow(x, y)

Retorna o valor de x na potência de y

random()

Retorna um número aleatório entre 0 e 1

round(x)

Retorna o valor de x arredondado para o inteiro mais próximo

sin(x)

Retorna o seno de x (x em radianos)

sqrt(x)

Retorna a raiz quadrada de x

tan(x)

Retorna a tangente de x (x em radianos).

Math e Números Aleatórios

Math.random ()

Math.random() retorna um número aleatório entre 0 (inclusive) e 1 (exclusivo).

Math.random(); // retorna a número aleatório menor que 1.

Inteiros Aleatórios em JavaScript

Math.random()Math.floor()  podem ser usados para retornar números inteiros aleatórios. 

Math.floor(Math.random() * 10);        // retorna inteiro aleatório de 0 a 9
Math.floor(Math.random() * 11);        // retorna inteiro aleatório de 0 a 10
Math.floor(Math.random() * 100);       // retorna inteiro aleatório de 0 a 99
Math.floor(Math.random() * 101);       // retorna inteiro aleatório de 0 a 100
Math.floor(Math.random() * 10) + 1;    // retorna inteiro aleatório de 1 a 10
Math.floor(Math.random() * 100) + 1;   // retorna inteiro aleatório de 1 a 100

Uma Função Aleatória Adequada

Como você pode ver nos exemplos acima, pode ser uma boa ideia criar uma função aleatória apropriada para usar para todos os propósitos inteiros aleatórios.

No exemplo a seguir a função JavaScript retorna um número aleatório maior ou igual ao min e menor que o máximo (min <= x < max).

function getRndInteger(min, max) {
  return Math.floor(Math.random() * (max - min) ) + min;
}

No exemplo a seguir a função JavaScript retorna um número aleatório maior ou igual ao min e menor ou igual que o máximo (min <= x <= max).

function getRndInteger(min, max) {
  return Math.floor(Math.random() * (max - min + 1) ) + min;
}