Maison  >  Article  >  interface Web  >  Comment générer des nombres aléatoires en JS

Comment générer des nombres aléatoires en JS

php中世界最好的语言
php中世界最好的语言original
2018-06-06 17:40:033423parcourir

Cette fois, je vais vous montrer comment générer des nombres aléatoires avec JS, et quelles sont les précautions à prendre pour générer des nombres aléatoires avec JS. Ce qui suit est un cas pratique, jetons un coup d'oeil.

var chars = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
function generateMixed(n) {
   var res = "";
   for(var i = 0; i < n ; i ++) {
     var id = Math.ceil(Math.random()*35);
     res += chars[id];
   }
   return res;
}

1.Math.random(); Le résultat est un nombre aléatoire entre 0 et 1 (y compris 0, excluant 1)

2.Math.floor(num); le paramètre num est une valeur numérique et le résultat de la fonction est la partie entière de num.

3.Math.round(num); Le paramètre num est une valeur numérique et le résultat de la fonction est l'entier après l'arrondi de num.

Math : Objet mathématique, fournissant des calculs mathématiques sur des données.

Math.random(); Renvoie un nombre aléatoire compris entre 0 et 1 (0 inclus, 1 exclu).

Math.ceil(n); Renvoie le plus petit entier supérieur ou égal à n.

Lorsque vous utilisez Math.ceil(Math.random()*10);, vous obtenez principalement des entiers aléatoires de 1 à 10, et la probabilité d'obtenir 0 est très faible.

Math.round(n); Renvoie la valeur de n arrondie à un entier.

Utilisez Math.round(Math.random()); pour obtenir un entier aléatoire de 0 à 1 de manière uniforme.

Lorsque vous utilisez Math.round(Math.random()*10);, vous pouvez essentiellement obtenir des entiers aléatoires de 0 à 10 de manière équilibrée, et la probabilité d'obtenir la valeur minimale 0 et la valeur maximale 10 est inférieur à la moitié.

Math.floor(n); Renvoie le plus grand entier inférieur ou égal à n.

Lors de l'utilisation de Math.floor(Math.random()*10);, des entiers aléatoires de 0 à 9 peuvent être obtenus uniformément.
Exemple aléatoire de fonction aléatoire pour js pour générer des nombres aléatoires

Fonction intégrée JavaScript Math.random()

random函数返回值 
返回0和1之间的伪随机数,可能为0,但总是小于1,[0,1) 
random函数示例 
//返回随机数 
document.write(Math.random()); 
//返回10-20的随机数 
document.write(Math.random()*(20-10)+10); 
//返回指定范围的随机数(m-n之间)的公式 
document.write(Math.random()*(n-m)+m);

En fonction du temps, vous pouvez également générer des nombres aléatoires

Le code est le suivant :

var now=new Date(); 
var number = now.getSeconds(); //这将产生一个基于目前时间的0到59的整数。 
var now=new Date(); 
var number = now.getSeconds()%43; //这将产生一个基于目前时间的0到42的整数。

Js Les nombres aléatoires génèrent 6 chiffres

Le code est le suivant :

<script type="text/javascript"> 
function MathRand() 
{ 
var Num=""; 
for(var i=0;i<6;i++) 
{ 
Num+=Math.floor(Math.random()*10); 
} 
document.getElementById("Lb_Random").innerText=Num; 
document.getElementById("Lb_Random").innerHTML=Num; 
} 
</script>

Plusieurs façons de générer des chaînes aléatoires avec JS

Le code est comme suit :

<script language="javascript"> 
function randomString(len) {
  len = len || 32;
  var $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';  /****默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1****/
  var maxPos = $chars.length;
  var pwd = '';
  for (i = 0; i < len; i++) {
    pwd += $chars.charAt(Math.floor(Math.random() * maxPos));
  }
  return pwd;
}
document.write(randomString(32));
</script>

Utilisez la méthode, il va sans dire, appelez la méthode randomString et le paramètre len est la longueur de la chaîne aléatoire renvoyée.

Le paramètre transmis est la longueur. Si aucun paramètre n'est fourni, la sortie par défaut est de 32 caractères.

Plusieurs utilisations de JS pour générer des nombres aléatoires !

Le code est le suivant :

<script>  
function GetRandomNum(Min,Max)
{  
var Range = Max - Min;  
var Rand = Math.random();  
return(Min + Math.round(Rand * Range));  
}  
var num = GetRandomNum(1,10);  
alert(num);  
</script> 
var chars = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
function generateMixed(n) {
   var res = "";
   for(var i = 0; i < n ; i ++) {
     var id = Math.ceil(Math.random()*35);
     res += chars[id];
   }
   return res;
}

1.Math.random(); Le résultat est un nombre aléatoire entre 0-1 (y compris 0, excluant 1)
2.Math.floor(num); Le paramètre num est une valeur numérique et le résultat de la fonction est la partie entière de num.
3.Math.round(num); Le paramètre num est une valeur numérique et le résultat de la fonction est l'entier après l'arrondi de num.

Math : Objet mathématique, fournissant des calculs mathématiques sur des données.
Math.random(); Renvoie un nombre aléatoire compris entre 0 et 1 (0 inclus, 1 exclu).

Math.ceil(n); Renvoie le plus petit entier supérieur ou égal à n.
Lorsque vous utilisez Math.ceil(Math.random()*10);, vous obtenez principalement des entiers aléatoires de 1 à 10, et la probabilité d'obtenir 0 est très faible.

Math.round(n); Renvoie la valeur de n arrondie à un entier.
Utilisez Math.round(Math.random()); pour obtenir un entier aléatoire de 0 à 1 de manière uniforme.
Lorsque vous utilisez Math.round(Math.random()*10);, vous pouvez obtenir des entiers aléatoires de 0 à 10 de manière fondamentalement équilibrée, et la probabilité d'obtenir la valeur minimale 0 et la valeur maximale 10 est inférieure que la moitié.

Math.floor(n); Renvoie le plus grand entier inférieur ou égal à n.
Lorsque vous utilisez Math.floor(Math.random()*10);, des entiers aléatoires de 0 à 9 peuvent être obtenus uniformément.

js génère une chaîne aléatoire + horodatage pour obtenir

Le JS par défaut génère 13 chiffres, et il faut /1000 pour le transmettre à php

Le code est le suivant :

timestamp = timestamp/1000;
<script type="text/javascript">
function randomChar(l) {
var x="0123456789qwertyuioplkjhgfdsazxcvbnm";
var tmp="";
var timestamp = new Date().getTime();
for(var i=0;i< l;i++) {
tmp += x.charAt(Math.ceil(Math.random()*100000000)%x.length);
}
return timestamp+tmp;

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le. Site Web chinois PHP !

Lecture recommandée :

Comment créer des exigences de chargement infinies en bas de la page coulissante

Utiliser vue-devtools à partir de zéro

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn