首頁  >  文章  >  web前端  >  有關JavaScript隨機生成事件的講解

有關JavaScript隨機生成事件的講解

巴扎黑
巴扎黑原創
2017-08-06 14:30:091456瀏覽

本篇文章主要介紹了詳解JavaScript按概率隨機生成事件,具有一定的參考價值,有興趣的小伙伴們可以參考一下

最近做了一個JavaScript按概率隨機生成事件,於是整理了一下思路,寫了一個小demo:


/*
*在抽奖的活动中经常会用到这个算法,不同奖项的获取概率不同,要按概率去随机生成对应的奖品
*
*/
function random(arr1, arr2) {
  var sum = 0,
    factor = 0,
    random = Math.random();

  for(var i = arr2.length - 1; i >= 0; i--) {
    sum += arr2[i]; // 统计概率总和
  };
  random *= sum; // 生成概率随机数
  for(var i = arr2.length - 1; i >= 0; i--) {
    factor += arr2[i];
    if(random <= factor) 
     return arr1[i];
  };
  return null;
};

// test
var a = [&#39;mac&#39;, &#39;iphone&#39;, &#39;vivo&#39;, &#39;OPPO&#39;];
var b = [0.1, 0.2, 0.3, 0.4];
console.log(random(a, b));

以上是有關JavaScript隨機生成事件的講解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn