js產生隨機數(shù)的幾個用法

2018-08-10 17:12 更新

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間的一個隨機數(shù)(包括0,不包括1) 
2.Math.floor(num); 參數(shù)num為一個數(shù)值,函數(shù)結果為num的整數(shù)部分。 
3.Math.round(num); 參數(shù)num為一個數(shù)值,函數(shù)結果為num四舍五入后的整數(shù)。

Math:數(shù)學對象,提供對數(shù)據(jù)的數(shù)學計算。
Math.random(); 返回0和1間(包括0,不包括1)的一個隨機數(shù)。

Math.ceil(n); 返回大于等于n的最小整數(shù)。
用Math.ceil(Math.random()*10);時,主要獲取1到10的隨機整數(shù),取0的幾率極小。

Math.round(n); 返回n四舍五入后整數(shù)的值。
用Math.round(Math.random());可均衡獲取0到1的隨機整數(shù)。
用Math.round(Math.random()*10);時,可基本均衡獲取0到10的隨機整數(shù),其中獲取最小值0和最大值10的幾率少一半。

Math.floor(n); 返回小于等于n的最大整數(shù)。
用Math.floor(Math.random()*10);時,可均衡獲取0到9的隨機整數(shù)。


js生成隨機數(shù)之random函數(shù)隨機示例

JavaScript Math.random()內置函數(shù) 

random函數(shù)返回值 
返回0和1之間的偽隨機數(shù),可能為0,但總是小于1,[0,1) 
random函數(shù)示例 
//返回隨機數(shù) 
document.write(Math.random()); 
//返回10-20的隨機數(shù) 
document.write(Math.random()*(20-10)+10); 
//返回指定范圍的隨機數(shù)(m-n之間)的公式 
document.write(Math.random()*(n-m)+m); 
基于時間,亦可以產生隨機數(shù) 


代碼如下:
var now=new Date(); 
var number = now.getSeconds(); //這將產生一個基于目前時間的0到59的整數(shù)。 
var now=new Date(); 

var number = now.getSeconds()%43; //這將產生一個基于目前時間的0到42的整數(shù)。 


Js 隨機數(shù)產生6位數(shù)字


代碼如下:

<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方法,參數(shù)len為返回的隨機字符串長度。

傳參就長度,如果不帶參數(shù)默認輸出32個字符。

JS產生隨機數(shù)的幾個用法!

代碼如下:

<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間的一個隨機數(shù)(包括0,不包括1) 
2.Math.floor(num); 參數(shù)num為一個數(shù)值,函數(shù)結果為num的整數(shù)部分。 
3.Math.round(num); 參數(shù)num為一個數(shù)值,函數(shù)結果為num四舍五入后的整數(shù)。

Math:數(shù)學對象,提供對數(shù)據(jù)的數(shù)學計算。
Math.random(); 返回0和1間(包括0,不包括1)的一個隨機數(shù)。

Math.ceil(n); 返回大于等于n的最小整數(shù)。
用Math.ceil(Math.random()*10);時,主要獲取1到10的隨機整數(shù),取0的幾率極小。

Math.round(n); 返回n四舍五入后整數(shù)的值。
用Math.round(Math.random());可均衡獲取0到1的隨機整數(shù)。
用Math.round(Math.random()*10);時,可基本均衡獲取0到10的隨機整數(shù),其中獲取最小值0和最大值10的幾率少一半。

Math.floor(n); 返回小于等于n的最大整數(shù)。
用Math.floor(Math.random()*10);時,可均衡獲取0到9的隨機整數(shù)。


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;



以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號