JavaScript Náhodný


Obsah

    Zobrazit obsah


Math.random()

Math.random() vrací náhodné číslo mezi 0 (včetně) a 1 (výhradní):

Příklad

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

Zkuste to sami →

<!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() vždy vrátí číslo nižší než 1.


JavaScript náhodná celá čísla

Math.random() použitý s Math.floor() lze použít k vrácení náhodných celých čísel.

Neexistuje nic takového jako celá čísla JavaScriptu.

Mluvíme zde o číslech bez desetinných míst.

Příklad

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

Zkuste to sami →

<!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>

Příklad

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

Zkuste to sami →

<!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>

Příklad

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

Zkuste to sami →

<!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>

Příklad

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

Zkuste to sami →

<!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>

Příklad

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

Zkuste to sami →

<!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>

Příklad

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

Zkuste to sami →

<!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>


Správná náhodná funkce

Jak můžete vidět z příkladů výše, může být dobrý nápad vytvořit správnou náhodnou funkci použít pro všechny účely náhodných celých čísel.

Tato funkce JavaScriptu vždy vrací náhodné číslo mezi min (včetně) a max (vyloučeno):

Příklad

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

Zkuste to sami →

<!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>

Tato funkce JavaScriptu vždy vrací náhodné číslo mezi min a max (oba zahrnuty):

Příklad

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

Zkuste to sami →

<!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>