JavaScript Aléatoire
Exemple
// Renvoie un nombre aléatoire :
Math.random(); JavaScript Math.random()
Math.random() renvoie un nombre aléatoire entre 0 (inclus) et 1 (exclus) :
Math.random() renvoie toujours un nombre inférieur à 1.
Entiers Aléatoires en JavaScript
Math.random() utilisé avec Math.floor() peut être utilisé pour renvoyer des entiers aléatoires.
Remarque
Il n'existe pas d'entiers en JavaScript.
Nous parlons ici de nombres sans décimales.
Exemple
// Renvoie un entier aléatoire de 0 à 9 (inclus) :
Math.floor(Math.random() * 10); Explication :
Math.random() renvoie un nombre à virgule flottante entre 0 (inclus) et 1 (exclus).
Exemples de résultats : 0.0, 0.237, 0.9999, mais jamais 1.
Math.random() * 10 donne une plage de 0 jusqu'à, mais n'incluant pas 10.
Exemples de résultats possibles : 0.0, 3.5, 9.99, etc.
Math.floor() arrondit un nombre à l'entier inférieur le plus proche :
- 3.5 devient 3
- 9.99 devient 9
- 0.1 devient 0
Les résultats entiers possibles sont donc de 0 à 9 (inclus).
En d'autres termes, la plage est [0, 9] .
Exemple
// Renvoie un entier aléatoire de 0 à 10 (inclus) :
Math.floor(Math.random() * 11); Exemple
// Renvoie un entier aléatoire de 0 à 99 (inclus) :
Math.floor(Math.random() * 100); Exemple
// Renvoie un entier aléatoire de 0 à 100 (inclus) :
Math.floor(Math.random() * 101); Exemple
// Renvoie un entier aléatoire entre 1 et 10 (inclus) :
Math.floor(Math.random() * 10) + 1; Explication :
Math.random() renvoie un nombre de 0 (inclus) jusqu'à, mais n'incluant pas 1.
Multiplier par 10 donne un nombre de 0 jusqu'à, mais n'incluant pas 10.
Ajouter 1 déplace cette plage à 1 jusqu'à, mais n'incluant pas 11.
Math.floor() arrondit ensuite vers le bas, donc vous obtenez un entier entre 1 et 10.
Exemple
// Renvoie un entier aléatoire de 1 à 100 (inclus) :
Math.floor(Math.random() * 100) + 1; Résumé
| Expression | Plage de | Plage à |
|---|---|---|
| Math.random() | 0 | <1 |
| Math.random() * 10 | 0 | <10 |
| Math.random() * 100 | 0 | <100 |
| Math.floor(Math.random() * 10) | 0 | 9 |
Une Fonction Aléatoire Appropriée
Comme vous pouvez le voir dans les exemples ci-dessus, il pourrait être judicieux de créer une fonction aléatoire appropriée à utiliser pour tous les besoins d'entiers aléatoires.
Cette fonction JavaScript renvoie toujours un entier aléatoire entre min (inclus) et max (exclus) :
Exemple
function getRndInteger(min, max) {
return Math.floor(Math.random() * (max - min) ) + min;
} Cette fonction JavaScript renvoie toujours un entier aléatoire entre min et max (inclus) :
Exemple
function getRndInteger(min, max) {
return Math.floor(Math.random() * (max - min + 1) ) + min;
}