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() e 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;
}