溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

js實現1,2,3,5數字按照概率生成

發布時間:2020-10-04 12:48:18 來源:腳本之家 閱讀:244 作者:mdxy-dxy 欄目:web開發

js按照配置的概率生成,概率規則如下:
1------------50%

2------------30%

3------------15%

5------------5%

簡單的代碼

function myRandom() {
 var rand = Math.random();
 if (rand < .5) return 1;
 if (rand < .8) return 2;
 if (rand < .95) return 3;
 return 5;
}

復雜點的

function prizeRand(oArr) {
 var sum = 0; // 總和
 var rand = 0; // 每次循環產生的隨機數
 var result = 0; // 返回的對象的key

 console.log(oArr);

 // 計算總和
 for (var i in oArr) {
  sum += oArr[i][0];
 }

 // 思路就是如果設置的數落在隨機數內,則返回,否則減去本次的數
 for (var i in oArr) {
  rand = Math.floor(Math.random()*sum + 1);
  if (oArr[i][0] >= rand) {
   result = oArr[i][0];
   break;
  } else {
   sum -= oArr[i][0];
  }
 }

 return result;

}

var oArr = {'5':[5, 'Mac'], '3':[15, 'iPhone'], '2':[30, 'iPad'], '1':[50, 'iWatch']};

console.log(prizeRand(oArr));

大家可以根據需要選擇,建議查看億速云的上一篇文章。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女