Két szám közötti véletlen szám generálása JavaScriptben

Van mód arra, hogy egy megadott tartományban (pl. 1-től 6-ig: 1, 2, 3, 4, 5 vagy 6) véletlen számot generáljunk JavaScriptben?

function randomIntFromInterval(min, max) { // min and max included 
  return Math.floor(Math.random() * (max - min + 1) + min);
}

Amit ez "extra" tesz, az az, hogy lehetővé teszi a véletlenszerű intervallumokat, amelyek nem 1-gyel kezdődnek. Így például 10 és 15 közötti véletlen számot kaphatsz. Rugalmasság.

Kommentárok (17)
Megoldás

Fontos

Az alábbi kód csak akkor működik, ha a minimális érték `1`. Nem működik az `1`-től eltérő minimális értékek esetén.

Ha 1 (és csakis 1) és 6 közötti véletlen egész számot szeretnénk kapni, akkor a következő számításokat kell elvégeznünk:

Math.floor(Math.random() * 6) + 1  

Ahol:

  • 1 a kezdőszám
  • 6 a lehetséges eredmények száma (1 + kezdőszám (6) - végszám (1))
Kommentárok (29)
var x = 6; // can be any number
var rand = Math.floor(Math.random()*x) + 1;
Kommentárok (5)