JavaScript aleatório


Índice

    Mostrar índice


Math.random()

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

Exemplo

// Returns a random number:
Math.random();

Experimente você mesmo →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Math.random()</h2>

<p>Math.random() returns a random number between 0 (included) and 1 (excluded):</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = Math.random();
</script>

</body>
</html>

Math.random() sempre retorna um número menor que 1.


Números inteiros aleatórios JavaScript

Math.random() usado com Math.floor() pode ser usado para retornar números inteiros aleatórios.

Não existem inteiros JavaScript.

Estamos falando de números sem decimais aqui.

Exemplo

// Returns a random integer from 0 to 9:
Math.floor(Math.random() * 10);

Experimente você mesmo →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Math</h2>

<p>Math.floor(Math.random() * 10) returns a random integer between 0 and 9 (both 
included):</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
Math.floor(Math.random() * 10);
</script>

</body>
</html>

Exemplo

// Returns a random integer from 0 to 10:
Math.floor(Math.random() * 11);

Experimente você mesmo →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Math</h2>

<p>Math.floor(Math.random() * 11) returns a random integer between 0 and 10 (both included):</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
Math.floor(Math.random() * 11);
</script>

</body>
</html>

Exemplo

// Returns a random integer from 0 to 99:
Math.floor(Math.random() * 100);

Experimente você mesmo →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Math</h2>

<p>Math.floor(Math.random() * 100)) returns a random integer between 0 and 99 
(both included):</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
Math.floor(Math.random() * 100);
</script>

</body>
</html>

Exemplo

// Returns a random integer from 0 to 100:
Math.floor(Math.random() * 101);

Experimente você mesmo →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Math</h2>

<p>Math.floor() used with Math.random() * 101 returns a random integer between 0 and 100 
(both included):</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
Math.floor(Math.random() * 101);
</script>

</body>
</html>

Exemplo

// Returns a random integer from 1 to 10:
Math.floor(Math.random() * 10) + 1;

Experimente você mesmo →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Math</h2>

<p>Math.floor(Math.random() * 10) + 1) returns a random integer between 1 and 10 
(both included):</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
Math.floor(Math.random() * 10) + 1;
</script>

</body>
</html>

Exemplo

// Returns a random integer from 1 to 100:
Math.floor(Math.random() * 100) + 1;

Experimente você mesmo →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Math</h2>

<p>Math.floor(Math.random() * 100) + 1) returns a random integer between 1 and 
100 (both included):</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
Math.floor(Math.random() * 100) + 1;
</script>

</body>
</html>


Uma função aleatória adequada

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

Esta função JavaScript sempre retorna um número aleatório entre min (incluído) e máximo (excluído):

Exemplo

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

Experimente você mesmo →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Math.random()</h2>

<p>Every time you click the button, getRndInteger(min, max) returns a random number between 0 
and 9 (both included):</p>

<button onclick="document.getElementById('demo').innerHTML = getRndInteger(0,10)">Click Me</button>

<p id="demo"></p>

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

</body>
</html>

Esta função JavaScript sempre retorna um número aleatório entre mínimo e máximo (ambos incluídos):

Exemplo

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

Experimente você mesmo →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Math.random()</h2>

<p>Every time you click the button, getRndInteger(min, max) returns a random number between 1 and 10 (both included):</p>

<button onclick="document.getElementById('demo').innerHTML = getRndInteger(1,10)">Click Me</button>

<p id="demo"></p>

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

</body>
</html>