Trong ví dụ này, bạn sẽ học cách tạo một số ngẫu nhiên trong JavaScript.
Để hiểu ví dụ này, bạn nên có kiến thức về các chủ đề lập trình JavaScript sau:
- JavaScript Toán ngẫu nhiên ()
- Tầng Toán JavaScript ()
Trong JavaScript, bạn có thể tạo một số ngẫu nhiên với Math.random()
hàm.
Math.random()
trả về một số dấu phẩy động ngẫu nhiên nằm trong khoảng từ 0 đến nhỏ hơn 1 (bao gồm 0 và không bao gồm 1 )
Ví dụ 1: Tạo một số ngẫu nhiên
// generating a random number const a = Math.random(); console.log(a);
Đầu ra
0,5856407221615856
Ở đây, chúng ta đã khai báo một biến a và gán cho nó một số ngẫu nhiên lớn hơn hoặc bằng 0 và nhỏ hơn 1 .
Lưu ý : Bạn có thể nhận được một đầu ra khác trong chương trình trên vì Math.random()
sẽ tạo ra một số ngẫu nhiên.
Chúng ta có thể sử dụng giá trị này trong phạm vi (0,1) để tìm giá trị ngẫu nhiên giữa hai số bất kỳ bằng công thức:
Math.random() * (highestNumber - lowestNumber) + lowestNumber
Ví dụ 2: Lấy một số ngẫu nhiên từ 1 đến 10
// generating a random number const a = Math.random() * (10-1) + 1 console.log(`Random value between 1 and 10 is $(a)`);
Đầu ra
Giá trị ngẫu nhiên giữa 1 và 10 là 7,392579122270686
Điều này sẽ hiển thị một số dấu phẩy động ngẫu nhiên lớn hơn 1 và nhỏ hơn 10 .
Tất cả các ví dụ trên đều cho số ngẫu nhiên dấu phẩy động.
Bạn có thể sử dụng Math.floor()
để nhận một giá trị số nguyên ngẫu nhiên. Math.floor()
trả về số bằng cách giảm giá trị đến giá trị nguyên gần nhất. Ví dụ,
Math.floor(5.389); // 5 Math.floor(5.9); // 5
Cú pháp để tìm giá trị số nguyên ngẫu nhiên giữa hai số:
Math.floor(Math.random() * (highestNumber - lowestNumber)) + lowestNumber
Ví dụ 3: Giá trị nguyên từ 1 đến 10
// generating a random number const a = Math.floor(Math.random() * (10 - 1)) + 1; console.log(`Random value between 1 and 10 is $(a)`);
Đầu ra
Giá trị ngẫu nhiên từ 1 đến 10 là 2
Điều này sẽ hiển thị đầu ra số nguyên từ 1 (bao gồm) đến 10 (loại trừ) , tức là (1 đến 9). Ở đây, Math.floor()
được sử dụng để chuyển đổi giá trị thập phân thành số nguyên.
Tương tự, nếu bạn muốn tìm số nguyên ngẫu nhiên trong khoảng từ min (bao gồm) đến tối đa (bao gồm), bạn có thể sử dụng công thức sau:
Math.floor(Math.random() * (max - min + 1)) + min
Ví dụ 4: Giá trị nguyên giữa hai số (Bao gồm)
// input from the user const min = parseInt(prompt("Enter a min value: ")); const max = parseInt(prompt("Enter a max value: ")); // generating a random number const a = Math.floor(Math.random() * (max - min + 1)) + min; // display a random number console.log(`Random value between $(min) and $(max) is $(a)`);
Đầu ra
Nhập giá trị tối thiểu: 1 Nhập giá trị tối đa: 50 Giá trị ngẫu nhiên từ 1 đến 50 là 47
Điều này sẽ hiển thị đầu ra số nguyên từ min (bao gồm) đến tối đa (bao gồm) .