JS獲取指定范圍隨機數


常用取整數的方法 : Math.floor(Math.random() * (max - min + 1)) + min

一步步來解析:

 Math.random() 函數返回一個浮點,  偽隨機數在范圍[0,1),也就是說,從0(包括0)往上,但是不包括1(排除1),然后您可以縮放到所需的范圍。實現將初始種子選擇到隨機數生成算法;它不能被用戶選擇或重置。  

返回值 :一個浮點型偽隨機數字,在0(包括0)和1(不包括)之間。

     -MDN

 

1. (max - min + 1)   

   大數減小數+ 1 得到差值    比如8-4+1 = 5;  也就是在5個數中間取值。

2.Math.random() *   (max - min + 1)     返回 0-5之間的值,浮點數。

3.  Math.floor(Math.random() * (max - min + 1))   向下取整  +最小值    得到

但是這個數很假  最大和最小幾乎取不到

那么如果要取浮點數呢?

Math.random() * (max - min )+ min;

 

============================================

如果要取隨機值  可以用Crypto.getRandomValues()

 

用法:

var array = new Uint32Array(10);
window.crypto.getRandomValues(array);

console.log("Your lucky numbers:");
for (var i = 0; i < array.length; i++) {
    console.log(array[i]);
}

 

 
       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM