时间:2021-05-25
最近做了一个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;};// testvar a = ['mac', 'iphone', 'vivo', 'OPPO'];var b = [0.1, 0.2, 0.3, 0.4];console.log(random(a, b));以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
linux随机密码生成工具mkpasswd详解及实例mkpasswd命令生成随机复杂密码,前提安装expect,然后执行mkpasswd命令即可生成随机的密码。
根据起始时间生成随机事件,代码如下:publicstaticDaterandomDate(DatebeginDate,DateendDate){if(begin
本文实例讲述了JavaScript数组对象实现增加一个返回随机元素的方法。分享给大家供大家参考。具体如下:核心特性:概率随机、顺序随机、随机冒泡本方法来自个人手
python的numpy能生成一定概率分布的随机数,但如果需要更具体的概率密度,累积概率,就要使用scipy.stats。scipy.stats用于统计分析,统
本文实例讲述了JavaScript生成随机字符串的方法。分享给大家供大家参考。具体分析如下:这里使用JavaScript生成一个随机字符串,可以指定字符串的长度