73 votes

JavaScript, générer un nombre aléatoire de 9 nombres

Je recherche un moyen efficace et élégant de générer une variable JavaScript de 9 chiffres :

Exemple : 323760488

84voto

mykhal Points 5873

pourquoi ne pas simplement extraire les chiffres de la représentation sous forme de chaîne Math.random()

 Math.random().toString().slice(2,11);
/*
Math.random()                         ->  0.12345678901234
             .toString()              -> "0.12345678901234"
                        .slice(2,11)  ->   "123456789"
 */

(l'exigence est que la Math.random() soit d'au moins 9 décimales)

29voto

José Points 241

Aussi...

 function getRandom(length) {

return Math.floor(Math.pow(10, length-1) + Math.random() * 9 * Math.pow(10, length-1));

}

getRandom(9) => 234664534

7voto

cespon Points 3360

En une ligne (ish) :

 var len = 10;
parseInt((Math.random() * 9 + 1) * Math.pow(10,len-1), 10);

Pas:

  • Nous générons un nombre aléatoire qui remplit 1 x < 10 .
  • Ensuite, nous multiplions par Math.pow(10,len-1) (nombre de longueur len ).
  • Enfin, parseInt() pour supprimer les décimales.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X