>  기사  >  웹 프론트엔드  >  js에서 임의의 정수를 얻는 방법

js에서 임의의 정수를 얻는 방법

下次还敢
下次还敢원래의
2024-05-06 10:09:18660검색

JavaScript에서 임의의 정수를 얻는 방법은 다음과 같습니다. Math.floor(Math.random() * (max - min + 1)) + min 사용: 최소와 최대(포함) 정수 사이에서 임의의 숫자를 생성합니다. Crypto.getRandomValues() 사용: 최소값과 최대값(포함) 사이에서 보다 안전한 무작위 정수를 생성합니다.

js에서 임의의 정수를 얻는 방법

JavaScript에서 임의의 정수를 얻는 방법

JavaScript에서 임의의 정수를 얻는 방법에는 여러 가지가 있으며, 어떤 방법을 선택하는지는 특정 요구 사항에 따라 다릅니다.

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

가장 일반적인 방법은 Math.random()Math를 사용하는 것입니다. .floor() 함수: Math.random()Math.floor() 函数:

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

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

示例:

<code class="js">// 生成一个介于 0 和 9(含)之间的随机整数
let randomInteger = Math.floor(Math.random() * (9 - 0 + 1)) + 0;
console.log(randomInteger); // 输出:介于 0 和 9 之间的随机整数</code>

Crypto.getRandomValues()

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

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

可以使用 fromArrayBuffer() 方法将 Uint8Array

  • Math.random() 0(포함)과 1(제외) 사이의 임의의 부동 소수점 숫자를 반환합니다.
  • Math.floor() 부동 소수점 수를 내림합니다.
Math.random()max - min + 1을 곱하여 min 사이의 값을 얻습니다. max(포함) 사이의 부동 소수점 숫자입니다. 그런 다음 Math.floor()를 사용하여 부동 소수점 수를 반내림하여 정수를 얻습니다. minmax는 생성할 임의의 정수의 최소값과 최대값입니다.

예:

🎜
<code class="js">// 生成一个介于 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 之间的随机整数</code>
🎜🎜Crypto.getRandomValues()🎜🎜🎜보다 안전한 무작위 정수가 필요한 경우 Crypto.getRandomValues() 메서드를 사용할 수 있습니다. 🎜
  • window.crypto.getRandomValues()는 무작위 바이트 배열이 포함된 Uint8Array를 반환합니다.
🎜 fromArrayBuffer() 메서드를 사용하여 Uint8Array를 정수로 변환할 수 있습니다: 🎜🎜🎜예: 🎜🎜rrreee

위 내용은 js에서 임의의 정수를 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.