/*
*在抽奖的活动中经常会用到这个算法,不同奖项的获取概率不同,要按概率去随机生成对应的奖品
*
*/
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 = ['mac', 'iphone', 'vivo', 'OPPO'];
var b = [0.1, 0.2, 0.3, 0.4];
console.log(random(a, b));

JavaScript按概率随机生成事件相关推荐

  1. python中如何控制随机的概率_Python3根据基础概率随机生成选项

    想要实现一个功能:不同事件发生的基础概率不同,根据基础概率来随机生成选项. 比如,北京的秋天有四种状态,并分别对应一个基础概率,然后随机生成某一天的天气情况. weatherlist = ['Sunn ...

  2. (幼儿园毕业)Javascript小学级随机生成四则运算

    软件工程第二次结对作业四则运算自动生成器网页版 一.题目要求 本次作业要求两个人合作完成,驾驶员和导航员角色自定,鼓励大家在工作期间角色随时互换,这里会布置两个题目,请各组成员根据自己的爱好任选一题. ...

  3. 【excel】根据单元格公式随机生成人名、及按概率生成不同值的测试数据

    目录 excel根据行号轮流选取不同的填充值 按概率选取填充值 随机生成18位数字(伪身份证号) 生成2到3字的随机人名 注意,在excel中应用公式时,单元格格式应设为常规. excel根据行号轮流 ...

  4. javascript随机生成用户名的方法

    这几天忙着搭一个社区,前端主要vue+antd,后端使用express+MongoDB. 在注册用户的环节,如果前端没有填写用户名,后端就给他随机生成一个. 主要方法函数: randomUser.js ...

  5. JavaScript随机生成颜色以及十六进制颜色 与RGB颜色值的相互转换

    /*** 随机生成颜色* @return 随机生成的十六进制颜色 */function randomColor(){var colorStr=Math.floor(Math.random()*0xFF ...

  6. javascript 随机取任意四个字母和随机生成一个名字

    <!DOCTYPE html> <html> <head lang="en">     <meta charset="UTF-8 ...

  7. Javascript 随机生成双色球投注

    ps:业余入门娱乐代码! 目录 1.最终效果 2.需求分析 3.代码实现 1.最终效果 2.需求分析 1) 从1-33号码中随机选择六位作为红球,不能重复. 2)从1-16号码中随机选择一位作为蓝球. ...

  8. 随机生成指定面积单连通区域

    最近在知乎上看到一个问题,「随机生成指定面积单连通区域?」,感觉还挺有意思的,于是整理一下写一篇新文章. 问题阐述 如下图所示,在 10x10 的区域中,随机生成面积为 6 的单连通区域,该「随机」包 ...

  9. 随机验证码如何在html里设置颜色,js随机生成验证码以及随机颜色

    Javascript通过Math.random()随机生成验证码. 代码如下: 随机验证码 .p1{ width:100px; height:30px; border:1px solid black; ...

最新文章

  1. BZOJ 1589 Trick or Treat on the Farm (tarjan缩点,记忆化搜索)[Usaco 2008 Dec Gold]【BZOJ计划】
  2. 切割 Tomcat 的 catalina.out 文件,解决日志文件过大的问题
  3. html 常见hack,针对主流浏览器的CSS-HACK写法及IE常用条件注释
  4. 线上python课程一般多少钱-python学习费用多少合适
  5. 麻省理工 城市规划 计算机,麻省理工学院建筑设计与城市规划科研
  6. Linux下使用php实现office转PDF
  7. 狂神说Spring学习笔记————(一发入魂)
  8. 腾讯地图javascript API实现地图模糊搜索标记,经纬度输入及点击双向定位
  9. HGAME 2022 week1 个人部分WP
  10. 互联网摸鱼日报(2022-12-21)
  11. 基于单片机的血压计c语言,基于AT89C51单片机的便携式数字血压计的设计
  12. 从VirtualDom(虚拟Dom)到真实DOM
  13. 获取汉字的拼音, 或者简繁体转换
  14. svg-captcha验证码识别,成功率100%
  15. office2016增强版注册
  16. matlab wind回测,[转载]基于Matlab和Wind SQL数据库的通用选股策略回测程序
  17. 发现生活中的数学之美
  18. Win10 精确触摸板(Precision Touchpad)滚动速度慢
  19. 百度地图定位和IP地址定位
  20. android 辐射动画_Android仿微信雷达辐射搜索好友(逻辑清晰实现简单)

热门文章

  1. Django【基础篇】
  2. PHP程序员如何突破成长瓶颈(php开发三到四年)
  3. 面向对象(程序员最呆的地方,一切皆是对象)
  4. Android开发技术周报 Issue#9
  5. 设计模式(十七):享元模式
  6. 304902阿里巴巴Java开发手册1.4.0
  7. MATLAB编程与应用系列-第3章 矩阵运算(4)
  8. 当世界从移动优先变为AI优先,未来企业竞争将赢在“维度”
  9. prototype中的$H函数的用法
  10. 1337. 矩阵中战斗力最弱的 K 行