O objeto JavaScript Math permite que você execute tarefas matemáticas em números.
Math.PI;
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.PI</h2>
<p>Math.PI returns the ratio of a circle's circumference to its diameter:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.PI;
</script>
</body>
</html>
Ao contrário de outros objetos, o objeto Math não possui construtor.
O objeto Math é estático.
Todos os métodos e propriedades podem ser usados sem criar primeiro um objeto Math.
A sintaxe para qualquer propriedade Math é: Math.property
.
JavaScript fornece 8 constantes matemáticas que podem ser acessadas como propriedades matemáticas:
Math.E // returns Euler's number
Math.PI // returns PI
Math.SQRT2 // returns the square root of 2
Math.SQRT1_2 // returns the square root of 1/2
Math.LN2 // returns the natural logarithm of 2
Math.LN10 // returns the natural logarithm of 10
Math.LOG2E // returns base 2 logarithm of E
Math.LOG10E // returns base 10 logarithm of E
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math Constants</h2>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML =
"<p><b>Math.E:</b> " + Math.E + "</p>" +
"<p><b>Math.PI:</b> " + Math.PI + "</p>" +
"<p><b>Math.SQRT2:</b> " + Math.SQRT2 + "</p>" +
"<p><b>Math.SQRT1_2:</b> " + Math.SQRT1_2 + "</p>" +
"<p><b>Math.LN2:</b> " + Math.LN2 + "</p>" +
"<p><b>Math.LN10:</b> " + Math.LN10 + "</p>" +
"<p><b>Math.LOG2E:</b> " + Math.LOG2E + "</p>" +
"<p><b>Math.Log10E:</b> " + Math.LOG10E + "</p>";
</script>
</body>
</html>
A sintaxe para qualquer método Math é: Math.method(number)
Existem 4 métodos comuns para arredondar um número para um inteiro:
Retorna x arredondado para o número inteiro mais próximo
Retorna x arredondado para o número inteiro mais próximo
Retorna x arredondado para o número inteiro mais próximo
Retorna a parte inteira de x (novo no ES6)
Math.round()
Math.round(x)
retorna o número inteiro mais próximo:
Math.round(4.6);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.round()</h2>
<p>Math.round(x) returns the value of x rounded to its nearest integer:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.round(4.6);
</script>
</body>
</html>
Math.round(4.5);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.round()</h2>
<p>Math.round(x) returns the value of x rounded to its nearest integer:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.round(4.5);
</script>
</body>
</html>
Math.round(4.4);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.round()</h2>
<p>Math.round(x) returns the value of x rounded to its nearest integer:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.round(4.4);
</script>
</body>
</html>
Math.ceil()
Math.ceil(x)
retorna o valor de x arredondado para cima para o número inteiro mais próximo:
Math.ceil(4.9);
Math.ceil(4.7);
Math.ceil(4.4);
Math.ceil(4.2);
Math.ceil(-4.2);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.ceil()</h2>
<p>Math.ceil() rounds a number <strong>up</strong> to its nearest integer:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.ceil(4.4);
</script>
</body>
</html>
Math.floor()
Math.floor(x)
retorna o valor de x arredondado para baixo para o número inteiro mais próximo:
Math.floor(4.9);
Math.floor(4.7);
Math.floor(4.4);
Math.floor(4.2);
Math.floor(-4.2);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.floor()</h2>
<p>Math.floor(x) returns the value of x rounded <strong>down</strong> to its nearest integer:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.floor(4.7);
</script>
</body>
</html>
Math.trunc()
Math.trunc(x)
retorna a parte inteira de x:
Math.trunc(4.9);
Math.trunc(4.7);
Math.trunc(4.4);
Math.trunc(4.2);
Math.trunc(-4.2);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.trunc()</h2>
<p>Math.trunc(x) returns the integer part of x:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.trunc(4.7);
</script>
</body>
</html>
Math.sign()
Math.sign(x)
retorna se x for negativo, nulo ou positivo:
Math.sign(-4);
Math.sign(0);
Math.sign(4);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.sign()</h2>
<p>Math.sign(x) returns if x is negative, null or positive:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.sign(4);
</script>
</body>
</html>
Math.trunc() e Math.sign() foram adicionados ao JavaScript 2015 - ES6.
Math.pow()
Math.pow(x, y)
retorna o valor de x elevado à potência de y:
Math.pow(8, 2);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.pow()</h2>
<p>Math.pow(x,y) returns the value of x to the power of y:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.pow(8,2);
</script>
</body>
</html>
Math.sqrt()
Math.sqrt(x)
retorna a raiz quadrada de x:
Math.sqrt(64);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.sqrt()</h2>
<p>Math.sqrt(x) returns the square root of x:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.sqrt(64);
</script>
</body>
</html>
Math.abs()
Math.abs(x)
retorna o valor absoluto (positivo) de x:
Math.abs(-4.7);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.abs()</h2>
<p>Math.abs(x) returns the absolute (positive) value of x:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.abs(-4.7);
</script>
</body>
</html>
Math.sin()
Math.sin(x)
retorna o seno (um valor entre -1 e 1) do ângulo x (dado em radianos).
Se você quiser usar graus em vez de radianos, será necessário converter graus em radianos:
Ângulo em radianos=Ângulo em graus x PI/180.
Math.sin(90 * Math.PI / 180); // returns 1 (the sine of 90 degrees)
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.sin()</h2>
<p>Math.sin(x) returns the sin of x (given in radians):</p>
<p>Angle in radians = (angle in degrees) * PI / 180.</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML =
"The sine value of 90 degrees is " + Math.sin(90 * Math.PI / 180);
</script>
</body>
</html>
Math.cos()
Math.cos(x)
retorna o cosseno (um valor entre -1 e 1) do ângulo x (dado em radianos).
Se você quiser usar graus em vez de radianos, será necessário converter graus em radianos:
Ângulo em radianos=Ângulo em graus x PI/180.
Math.cos(0 * Math.PI / 180); // returns 1 (the cos of 0 degrees)
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.cos()</h2>
<p>Math.cos(x) returns the cosine of x (given in radians):</p>
<p>Angle in radians = (angle in degrees) * PI / 180.</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML =
"The cosine value of 0 degrees is " + Math.cos(0 * Math.PI / 180);
</script>
</body>
</html>
Math.min() / Math.max()
Math.min()
e Math.max()
podem ser usados para encontrar o valor mais baixo ou mais alto em uma lista de argumentos:
Math.min(0, 150, 30, 20, -8, -200);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.min()</h2>
<p>Math.min() returns the lowest value in a list of arguments:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML =
Math.min(0, 150, 30, 20, -8, -200);
</script>
</body>
</html>
Math.max(0, 150, 30, 20, -8, -200);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.max()</h2>
<p>Math.max() returns the highest value in a list of arguments.</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML =
Math.max(0, 150, 30, 20, -8, -200);
</script>
</body>
</html>
Math.random()
Math.random()
retorna um número aleatório entre 0 (inclusive) e 1 (exclusivo):
Math.random();
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.random()</h2>
<p>Math.random() returns a random number between 0 and 1:</p>
<p id="demo"></p>
<p>Tip: Click on "Run" several times.</p>
<script>
document.getElementById("demo").innerHTML = Math.random();
</script>
</body>
</html>
Você aprenderá mais sobre Math.random()
no próximo capítulo deste tutorial.
Math.log(x)
retorna o logaritmo natural de x.
O logaritmo natural retorna o tempo necessário para atingir um determinado nível de crescimento:
Math.log(1);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.log()</h2>
<p>Math.log() returns the natural logarithm of a number:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.log(1);
</script>
</body>
</html>
Math.log(2);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.log()</h2>
<p>Math.log() returns the natural logarithm of a number:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.log(2);
</script>
</body>
</html>
Math.log(3);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.log()</h2>
<p>Math.log() returns the natural logarithm of a number:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.log(3);
</script>
</body>
</html>
Math.E e Math.log() são gêmeos.
Quantas vezes devemos multiplicar Math.E para obter 10?
Math.log(10);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.log()</h2>
<p>How many times must we multiply Math.E to get 10?</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.log(10);
</script>
</body>
</html>
Math.log2(x)
retorna o logaritmo de base 2 de x.
Quantas vezes devemos multiplicar 2 para obter 8?
Math.log2(8);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.log2()</h2>
<p>Math.log2() returns the base 2 logarithm of a number.</p>
<p>How many times must we multiply 2 to get 8?</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.log2(8);
</script>
</body>
</html>
Math.log10(x)
retorna o logaritmo de base 10 de x.
Quantas vezes devemos multiplicar 10 para obter 1000?
Math.log10(1000);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Math.log10()</h2>
<p>Math.log10() returns the base 10 logarithm of a number.</p>
<p>How many times must we multiply 10 to get 1000?</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Math.log10(1000);
</script>
</body>
</html>
Retorna o valor absoluto de x
Retorna o arco cosseno de x, em radianos
Retorna o arco cosseno hiperbólico de x
Retorna o arco seno de x, em radianos
Retorna o arco seno hiperbólico de x
Retorna o arco tangente de x como um valor numérico entre -PI/2 e PI/2 radianos
Retorna o arco tangente do quociente de seus argumentos
Retorna o arco tangente hiperbólico de x
Retorna a raiz cúbica de x
Retorna x, arredondado para cima, para o número inteiro mais próximo
Retorna o cosseno de x (x está em radianos)
Retorna o cosseno hiperbólico de x
Retorna o valor de Ex
Retorna x, arredondado para baixo para o número inteiro mais próximo
Retorna o logaritmo natural (base E) de x
Retorna o número com o maior valor
Retorna o número com o menor valor
Retorna o valor de x elevado à potência de y
Retorna um número aleatório entre 0 e 1
Arredonda x para o número inteiro mais próximo
Retorna se x for negativo, nulo ou positivo (-1, 0, 1)
Retorna o seno de x (x está em radianos)
Retorna o seno hiperbólico de x
Retorna a raiz quadrada de x
Retorna a tangente de um ângulo
Retorna a tangente hiperbólica de um número
Retorna a parte inteira de um número (x)
Para uma referência completa, vá para nossa Referência Completa de Objetos Matemáticos.
A referência contém descrições e exemplos de todas as propriedades e métodos do Math.