這次帶給大家JS怎麼產生隨機數,JS產生隨機數的注意事項有哪些,以下就是實戰案例,一起來看一下。
var chars = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']; function generateMixed(n) { var res = ""; for(var i = 0; i < n ; i ++) { var id = Math.ceil(Math.random()*35); res += chars[id]; } return res; }
1.Math.random(); 結果為0-1間的一個隨機數(包括0,不包括1)
2.Math.floor(num); 參數num為一個數值,函數結果為num的整數部分。
3.Math.round(num); 參數num為一個數值,函數結果為num四捨五入後的整數。
Math:數學對象,提供資料的數學計算。
Math.random(); 傳回0和1間(包括0,不包括1)的一個隨機數。
Math.ceil(n); 傳回大於等於n的最小整數。
用Math.ceil(Math.random()*10);時,主要取得1到10的隨機整數,取0的幾率極小。
Math.round(n); 傳回n四捨五入後整數的值。
用Math.round(Math.random());可均衡取得0到1的隨機整數。
用Math.round(Math.random()*10);時,可基本均衡取得0到10的隨機整數,其中取得最小值0和最大值10的幾率少一半。
Math.floor(n); 傳回小於等於n的最大整數。
用Math.floor(Math.random()*10);時,可均衡取得0到9的隨機整數。
js產生隨機數之random函數隨機範例
JavaScript Math.random()內建函數
random函数返回值 返回0和1之间的伪随机数,可能为0,但总是小于1,[0,1) random函数示例 //返回随机数 document.write(Math.random()); //返回10-20的随机数 document.write(Math.random()*(20-10)+10); //返回指定范围的随机数(m-n之间)的公式 document.write(Math.random()*(n-m)+m);
基於時間,也可以產生隨機數字
程式碼如下:
var now=new Date(); var number = now.getSeconds(); //这将产生一个基于目前时间的0到59的整数。 var now=new Date(); var number = now.getSeconds()%43; //这将产生一个基于目前时间的0到42的整数。
Js 隨機數產生6位元數字
程式碼如下:
<script type="text/javascript"> function MathRand() { var Num=""; for(var i=0;i<6;i++) { Num+=Math.floor(Math.random()*10); } document.getElementById("Lb_Random").innerText=Num; document.getElementById("Lb_Random").innerHTML=Num; } </script>
JS產生隨機字串的多種方法
#程式碼如下:
<script language="javascript"> function randomString(len) { len = len || 32; var $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; /****默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1****/ var maxPos = $chars.length; var pwd = ''; for (i = 0; i < len; i++) { pwd += $chars.charAt(Math.floor(Math.random() * maxPos)); } return pwd; } document.write(randomString(32)); </script>
使用方法,就不用說了吧,呼叫randomString方法,參數len為傳回的隨機字串長度。
傳參就長度,如果不帶參數預設輸出32個字元。
JS產生隨機數的幾個用法!
程式碼如下:
<script> function GetRandomNum(Min,Max) { var Range = Max - Min; var Rand = Math.random(); return(Min + Math.round(Rand * Range)); } var num = GetRandomNum(1,10); alert(num); </script> var chars = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']; function generateMixed(n) { var res = ""; for(var i = 0; i < n ; i ++) { var id = Math.ceil(Math.random()*35); res += chars[id]; } return res; }
1.Math.random(); 結果為0-1間的一個隨機數(包括0,不包含1)
2.Math.floor(num); 參數num為一個數值,函數結果為num的整數部分。
3.Math.round(num); 參數num為一個數值,函數結果為num四捨五入後的整數。
Math:數學對象,提供資料的數學計算。
Math.random(); 傳回0和1間(包括0,不包括1)的一個隨機數。
Math.ceil(n); 傳回大於等於n的最小整數。
用Math.ceil(Math.random()*10);時,主要取得1到10的隨機整數,取0的幾率極小。
Math.round(n); 傳回n四捨五入後整數的值。
用Math.round(Math.random());可均衡取得0到1的隨機整數。
用Math.round(Math.random()*10);時,可基本均衡取得0到10的隨機整數,其中取得最小值0和最大值10的幾率少一半。
Math.floor(n); 傳回小於等於n的最大整數。
用Math.floor(Math.random()*10);時,可均衡取得0到9的隨機整數。
js產生隨機字串時間戳獲取
預設JS產生的是13位元,傳給php需要/1000
程式碼如下:
timestamp = timestamp/1000; <script type="text/javascript"> function randomChar(l) { var x="0123456789qwertyuioplkjhgfdsazxcvbnm"; var tmp=""; var timestamp = new Date().getTime(); for(var i=0;i< l;i++) { tmp += x.charAt(Math.ceil(Math.random()*100000000)%x.length); } return timestamp+tmp;
相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
以上是JS怎麼產生隨機數的詳細內容。更多資訊請關注PHP中文網其他相關文章!