Maison > interface Web > js tutoriel > Comment obtenir des entiers aléatoires en js

Comment obtenir des entiers aléatoires en js

下次还敢
Libérer: 2024-05-06 10:09:18
original
794 Les gens l'ont consulté

Il existe de nombreuses façons d'obtenir des entiers aléatoires en JavaScript, notamment : en utilisant Math.floor(Math.random() * (max - min + 1)) + min : générer un nombre aléatoire entre min et max (inclus) Integers ; utilisez Crypto.getRandomValues() : générez des entiers aléatoires plus sécurisés entre min et max (inclus).

Comment obtenir des entiers aléatoires en js

Façons d'obtenir des entiers aléatoires en JavaScript

Il existe de nombreuses façons d'obtenir des entiers aléatoires en JavaScript, et la méthode que vous choisissez dépend de vos besoins spécifiques.

Math.floor(Math.random() * (max - min + 1)) + min

La méthode la plus courante consiste à utiliser Math.random() et Math .floor() Fonction : Math.random()Math.floor() 函数:

  • Math.random() 返回一个介于 0(含)和 1(不含)之间的随机浮点数。
  • Math.floor() 将浮点数向下取整。

Math.random() 乘以 max - min + 1,可以得到一个介于 minmax(含)之间的随机浮点数。然后使用 Math.floor() 将浮点数向下取整,得到一个整数。minmax 是要生成的随机整数的最小值和最大值。

示例:

// 生成一个介于 0 和 9(含)之间的随机整数
let randomInteger = Math.floor(Math.random() * (9 - 0 + 1)) + 0;
console.log(randomInteger); // 输出:介于 0 和 9 之间的随机整数
Copier après la connexion

Crypto.getRandomValues()

对于需要更安全随机整数的情况下,可以使用 Crypto.getRandomValues() 方法:

  • window.crypto.getRandomValues() 返回一个包含随机字节数组的 Uint8Array

可以使用 fromArrayBuffer() 方法将 Uint8Array

  • Math.random() Renvoie un nombre aléatoire à virgule flottante entre 0 (inclus) et 1 (exclusif).
  • Math.floor() Arrondit un nombre à virgule flottante vers le bas.

Multipliez Math.random() par max - min + 1 pour obtenir une valeur comprise entre min et aléatoire nombre à virgule flottante compris entre et max (inclus). Utilisez ensuite Math.floor() pour arrondir le nombre à virgule flottante vers le bas pour obtenir un entier. min et max sont les valeurs minimales et maximales des entiers aléatoires à générer.

Exemple :

🎜
// 生成一个介于 100 和 999(含)之间的随机整数
let buffer = new ArrayBuffer(4);
window.crypto.getRandomValues(buffer);
let int = new DataView(buffer).getUint32(0);
let min = 100;
let max = 999;
let randomInteger = int % (max - min + 1) + min;
console.log(randomInteger); // 输出:介于 100 和 999 之间的随机整数
Copier après la connexion
🎜🎜Crypto.getRandomValues()🎜🎜🎜Pour les cas où des entiers aléatoires plus sécurisés sont nécessaires, vous pouvez utiliser la méthode Crypto.getRandomValues() : 🎜
  • window.crypto.getRandomValues() renvoie un Uint8Array contenant un tableau d'octets aléatoires.
🎜Vous pouvez utiliser la méthode fromArrayBuffer() pour convertir Uint8Array en un entier : 🎜🎜🎜Exemple : 🎜🎜rrreee

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal