在JavaScript中,生成指定范圍內的隨機數是非常常見的需求。例如,我們需要隨機生成一個1-100之間的整數作為抽獎結果,或者在一個字符數組中隨機選取一個元素。這時候需要使用JavaScript的Math對象提供的函數來生成指定范圍的隨機數。
Math.random()函數是用來生成一個0-1之間的隨機數的,例如:
但是,如果我們需要生成指定范圍內的隨機數,該怎么辦呢?這時候我們可以利用Math對象的另一個函數Math.floor()或者Math.ceil(),分別向下取整或向上取整。舉個例子,如果我們需要生成一個1-100之間的整數,可以這樣寫:let randomNum = Math.random();
console.log(randomNum); // 0.653761654272464
這里的Math.floor(Math.random() * 100)生成的是一個0-99之間的隨機數,加上1后就生成了一個1-100之間的整數。 如果我們需要生成一個浮點數,可以修改上面的代碼:let randomNum = Math.floor(Math.random() * 100) + 1;
console.log(randomNum);
其中,max和min分別為隨機數范圍的上限和下限。 需要注意的是,Math.random()的隨機數是一個偽隨機數,因為是通過算法生成的。如果不重置隨機數種子,每次生成的隨機數順序都是一樣的。因此,在生成大量的隨機數時,應該先手動設置隨機數種子,例如:let randomNum = Math.random() * (max - min) + min;
console.log(randomNum);
以上就是實現JavaScript指定范圍隨機數的方法,希望對大家有所幫助!let seed = Date.now(); //設置隨機數種子為當前時間戳
Math.seedrandom(seed); //使用seedrandom庫重新生成“真”隨機數
let randomNum = Math.floor(Math.random() * 100) + 1;
console.log(randomNum);
下一篇css兩div的距離