Hướng dẫn how are random numbers generated in javascript? - các số ngẫu nhiên được tạo ra trong javascript như thế nào?

Hàm Math.random() trả về một số nổi, số giả ngẫu nhiên lớn hơn hoặc bằng 0 và nhỏ hơn 1, với phân phối xấp xỉ trên phạm vi đó-sau đó bạn có thể mở rộng theo phạm vi mong muốn của mình. Việc thực hiện chọn hạt giống ban đầu vào thuật toán tạo số ngẫu nhiên; Nó không thể được người dùng chọn hoặc đặt lại.Math.random() function returns a floating-point, pseudo-random number that's greater than or equal to 0 and less than 1, with approximately uniform distribution over that range — which you can then scale to your desired range. The implementation selects the initial seed to the random number generation algorithm; it cannot be chosen or reset by the user.

Thử nó

Lưu ý: Math.random() không cung cấp các số ngẫu nhiên an toàn bằng mã hóa. Không sử dụng chúng cho bất cứ điều gì liên quan đến bảo mật. Thay vào đó, sử dụng API tiền điện tử web và chính xác hơn là phương thức window.crypto.getRandomValues(). Math.random() does not provide cryptographically secure random numbers. Do not use them for anything related to security. Use the Web Crypto API instead, and more precisely the window.crypto.getRandomValues() method.

Cú pháp

Giá trị trả về

Một số nổi, số giả ngẫu nhiên giữa 0 (bao gồm) và 1 (độc quyền).

Ví dụ

Lưu ý rằng vì các số trong JavaScript là số điểm nổi của IEEE 754 với hành vi tối đa đến gần nhất, các phạm vi được yêu cầu cho các chức năng bên dưới (không bao gồm chính cho Math.random()) không chính xác. Nếu giới hạn cực lớn được chọn (253 trở lên), thì có thể trong những trường hợp cực kỳ hiếm gặp để đạt đến giới hạn trên thường bị loại trừ.

Nhận một số ngẫu nhiên giữa 0 (bao gồm) và 1 (độc quyền)

function getRandom() {
  return Math.random();
}

Nhận một số ngẫu nhiên giữa hai giá trị

Ví dụ này trả về một số ngẫu nhiên giữa các giá trị được chỉ định. Giá trị trả về không thấp hơn (và có thể bằng) min và nhỏ hơn (và không bằng) max.

function getRandomArbitrary(min, max) {
  return Math.random() * (max - min) + min;
}

Nhận một số nguyên ngẫu nhiên giữa hai giá trị

Ví dụ này trả về một số nguyên ngẫu nhiên giữa các giá trị được chỉ định. Giá trị không thấp hơn min (hoặc số nguyên tiếp theo lớn hơn min nếu min không phải là số nguyên) và nhỏ hơn (nhưng không bằng) max.

function getRandomInt(min, max) {
  min = Math.ceil(min);
  max = Math.floor(max);
  return Math.floor(Math.random() * (max - min) + min); // The maximum is exclusive and the minimum is inclusive
}

Lưu ý: Có thể rất hấp dẫn khi sử dụng

function getRandomArbitrary(min, max) {
  return Math.random() * (max - min) + min;
}
4 để thực hiện điều đó, nhưng làm như vậy sẽ khiến các số ngẫu nhiên của bạn tuân theo phân phối không đồng nhất, điều này có thể không được chấp nhận cho nhu cầu của bạn. It might be tempting to use
function getRandomArbitrary(min, max) {
  return Math.random() * (max - min) + min;
}
4 to accomplish that, but doing so would cause your random numbers to follow a non-uniform distribution, which may not be acceptable for your needs.

Nhận một số nguyên ngẫu nhiên giữa hai giá trị, bao gồm

Mặc dù hàm

function getRandomArbitrary(min, max) {
  return Math.random() * (max - min) + min;
}
5 ở trên được bao gồm ở mức tối thiểu, nhưng nó độc quyền ở mức tối đa. Điều gì sẽ xảy ra nếu bạn cần kết quả được bao gồm ở cả tối thiểu và tối đa? Hàm
function getRandomArbitrary(min, max) {
  return Math.random() * (max - min) + min;
}
6 dưới đây thực hiện điều đó.

function getRandomIntInclusive(min, max) {
  min = Math.ceil(min);
  max = Math.floor(max);
  return Math.floor(Math.random() * (max - min + 1) + min); // The maximum is inclusive and the minimum is inclusive
}

Thông số kỹ thuật

Sự chỉ rõ
Đặc tả ngôn ngữ Ecmascript # Sec-Math.Random
# sec-math.random

Tính tương thích của trình duyệt web

Bảng BCD chỉ tải trong trình duyệt

Xem thêm

Các số ngẫu nhiên được tạo ra như thế nào?

Để tạo ra các số ngẫu nhiên thực sự của người Viking, các trình tạo số ngẫu nhiên thu thập được entropy, dữ liệu hoặc dường như ngẫu nhiên từ thế giới vật lý xung quanh chúng. Đối với các số ngẫu nhiên không thực sự cần phải ngẫu nhiên, chúng có thể chỉ sử dụng thuật toán và giá trị hạt giống.

Hãy tự mình thử »

Làm thế nào để bạn tạo ra một số ngẫu nhiên trong khoảng từ 1 đến 3 trong JavaScript?

Đặt x = math.random () * 10;

Hãy tự mình thử »

Trả về một số ngẫu nhiên trong khoảng từ 0 đến 100:

Đặt x = math.random () * 100);

Hãy tự mình thử »

Một số toàn bộ ngẫu nhiên trong khoảng từ 1 đến 10:

Đặt x = math.floor ((math.random () * 10) + 1);

Hãy tự mình thử »

Một số toàn bộ ngẫu nhiên trong khoảng từ 1 đến 10:

Đặt x = math.floor ((math.random () * 10) + 1);

Hãy tự mình thử »


Một số toàn bộ ngẫu nhiên trong khoảng từ 1 đến 10:

Đặt x = math.floor ((math.random () * 10) + 1);

Một số toàn bộ ngẫu nhiên từ 1 đến 100:

Đặt x = math.floor ((math.random () * 100) + 1);

Định nghĩa và cách sử dụng
crypto.getRandomValues()



Phương thức Math.random() trả về một số ngẫu nhiên từ 0 (bao gồm) cho đến nhưng không bao gồm 1 (độc quyền).

Ghi chú

Math.random () không trả về một số an toàn bằng mã hóa.

Nếu bạn cần một số bảo mật bằng mã hóa, hãy sử dụng phương thức API tiền điện tử này: crypto.getrandomvalues ​​()Cú pháp
Thông sốGiá trị trả về


Loại hình

Sự mô tả

Con số

Một số ngẫu nhiên từ 0 (bao gồm) cho đến nhưng không bao gồm 1 (độc quyền).Hỗ trợ trình duyệtMath.random() là tính năng ECMAScript1 (ES1).ES1 (JavaScript 1997) được hỗ trợ đầy đủ trong tất cả các trình duyệt:Trình duyệt ChromeI E
Bờ rìaBờ rìaBờ rìaBờ rìaBờ rìaBờ rìa


Làm thế nào để JavaScript tạo ra 5 số ngẫu nhiên?

Tạo ra 5 số ngẫu nhiên độc đáo JavaScript Câu trả lời mã..
var arr = [] ;.
while (mảng. chiều dài <8) {.
var r = toán học. Tầng (Toán. ngẫu nhiên () * 100) + 1 ;.
if (mảng. indexof (r) === -1) mảng. Đẩy (r) ;.
Bảng điều khiển. log (mảng) ;.

Các số ngẫu nhiên được tạo ra như thế nào?

Để tạo ra các số ngẫu nhiên thực sự của người Viking, các trình tạo số ngẫu nhiên thu thập được entropy, dữ liệu hoặc dường như ngẫu nhiên từ thế giới vật lý xung quanh chúng. Đối với các số ngẫu nhiên không thực sự cần phải ngẫu nhiên, chúng có thể chỉ sử dụng thuật toán và giá trị hạt giống.random number generators gather “entropy,” or seemingly random data from the physical world around them. For random numbers that don't really need to be random, they may just use an algorithm and a seed value.

Làm thế nào để bạn tạo ra một số ngẫu nhiên trong khoảng từ 1 đến 3 trong JavaScript?

Ví dụ: Giá trị số nguyên giữa hai số trong JavaScript, bạn có thể tạo một số ngẫu nhiên với toán học.chức năng ngẫu nhiên ().Chương trình trên sẽ hiển thị đầu ra số nguyên giữa tối thiểu (bao gồm) đến tối đa (bao gồm).Đầu tiên, các giá trị tối thiểu và tối đa được lấy làm đầu vào từ người dùng.

Làm thế nào để phản ứng JavaScript tạo ra các số ngẫu nhiên?

Để tạo một số ngẫu nhiên trong React JS, hãy sử dụng phương thức math.random (), nó sẽ tạo ra một số ngẫu nhiên.Trong ví dụ sau, chúng tôi đặt số tối đa và tối đa với toán học.Phương thức ngẫu nhiên () để nó sẽ tạo các số ngẫu nhiên trong phạm vi của số tối thiểu và tối đa.use the Math. random() method it will generate a random number. In the following example, we set the min and max number with the Math. random() method so it will generate random numbers in the range of min and max number.