Maison  >  Article  >  interface Web  >  js génère aléatoirement une chaîne de combinaisons alphanumériques, des nombres animés aléatoires_compétences javascript

js génère aléatoirement une chaîne de combinaisons alphanumériques, des nombres animés aléatoires_compétences javascript

WBOY
WBOYoriginal
2016-05-16 15:41:022136parcourir

animation aléatoire js pour générer un ensemble de nombres aléatoires


Aperçu en ligne Cliquez pour télécharger

Description de l'effet :

Un seul fichier index.html dans la pièce jointe est valide

Il contient deux parties : css et html

Quelques nombres aléatoires générés par pure js

Ne répétez pas à chaque fois. Cliquez sur le bouton pour changer à nouveau

Utilisation :

1. Introduisez les styles CSS dans votre page Web

2. Copiez la partie du code dans le corps là où vous en avez besoin

JS génère une chaîne alphanumérique aléatoire

Avant-propos

Il existe une exigence récente pour générer une chaîne aléatoire de combinaisons alphanumériques de 3 à 32 chiffres, et une autre consiste à générer une chaîne aléatoire de 43 chiffres.

Méthode 1

Merveilleuse façon d'écrire

Math.random().toString(36).substr(2);

Résultats de sortie

Explication

C'est très intéressant. Après quelques recherches, la spécification du paramètre après toString peut être n'importe quel entier compris entre 2 et 36. S'il n'est pas écrit, la valeur par défaut est 10 (c'est-à-dire décimal). nombre.

S'il s'agit d'un nombre pair, les chaînes numériques renvoyées seront courtes. S'il s'agit d'un nombre impair, une valeur de représentation très longue sera renvoyée.
Si 5bc624d66dc775917af1f09457fef7dc10 contiendra des lettres.
Donc si vous souhaitez obtenir une longue chaîne de caractères aléatoires, vous devez utiliser un paramètre > 10 et un nombre impair, et utiliser slice(2,n) pour intercepter en fonction de la longueur !

Méthode 2

Il existe de nombreuses façons de mettre en œuvre cela. Puisque la manière d'écrire précédente ne répond pas aux besoins, j'ai écrit la suivante Welcome pour contribuer.

Adresse

https://gist.github.com/xuanfeng/b23ab28ab412254e1594

Code

/*
** randomWord 产生任意长度随机字母数字组合
** randomFlag-是否任意长度 min-任意长度最小位[固定位数] max-任意长度最大位
** xuanfeng 2014-08-28
*/
 
function randomWord(randomFlag, min, max){
 var str = "",
 range = min,
 arr = ['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', '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'];
 
 // 随机产生
 if(randomFlag){
 range = Math.round(Math.random() * (max-min)) + min;
 }
 for(var i=0; i<range; i++){
 pos = Math.round(Math.random() * (arr.length-1));
 str += arr[pos];
 }
 return str;
}

Comment utiliser

Générer une chaîne aléatoire de 3 à 32 chiffres : randomWord(true, 3, 32)

Générer une chaîne aléatoire de 43 chiffres : randomWord(false, 43)

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

<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 compris entre 0 et 1 (0 inclus, 1 exclu)

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 après arrondi.

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.

Cet article partagera avec vous le contenu lié à la génération de nombres aléatoires par js. Si vous souhaitez en savoir plus sur les nombres aléatoires js, veuillez continuer à prêter attention à ce site Web. Notre site Web sera mis à jour chaque jour avec du nouveau contenu.

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