js抽奖概率随机取出数据(简单示例)
在平常活动开发当中,经常会碰到抽奖等类似的js功能,那么下面我们随机取数组中的一条来展示出来。
( 一 ) 无概率问题
var gift_ = ['apple pro一台','iphoneX一台','小米Note3一台','超级玛丽像素人一个','iPad pro一台','现金666元','抱歉,未中奖呀'];
var __MaxNumber__ = gift_.length;
function __gift__(){
var _number = Math.floor(Math.random()*__MaxNumber__);
console.log(_number);
console.log(gift_[_number]);
}
__gift__();
Math.floor(Math.random()*__MaxNumber__); 随机取值0 ~ gift_数组的长度,并没有计算取出数值的概率问题 ( 二 ) 有概率问题
var gitf_ = [
{one:'apple pro一台',two:'iphoneX一台',three:'现金666元',four: '抱歉,未中奖呀'}
];
function __gift__() {
var __rand__ = Math.random();
if (__rand__ < .15) console.log(gitf_[0].one);
else if (__rand__ < .3) console.log(gitf_[0].two);
else if (__rand__ < .6) console.log(gitf_[0].three);
else console.log(gitf_[0].four);
}
__gift__();
var rand = Math.random(); 通过rand来设置取出数据的概率大小,就像某个活动抽奖,一等奖有可能永远都不会被抽到一样js抽奖概率随机取出数据(简单示例)的更多相关文章
- Dropzone.js拖拽上传(简单示例)
今天碰到一个需求,页面上有“点击上传”的按钮,点击可以执行上传事件,从桌面拖拽图片拖拽到任何地方,都可以执行上传,且不影响点击按钮事件.下面是简单示例: 简单示例如下: <!DOCTYPE ht ...
- js中的Map对象的简单示例
es6提供一个对象Map, 其功能类似于java中的Map, 下面是java中的Map和js中的Map的简单对比: js中的Map.set()相当于java中的Map.put(), js中的Map.s ...
- HtmlAgilityPack抓取搜房网数据简单示例
HtmlAgilityPack是一个开源的解析HTML元素的类库,最大的特点是可以通过XPath来解析HMTL,如果您以前用C#操作过XML,那么使用起HtmlAgilityPack也会得心应手.目前 ...
- MapReduce从HBase读写数据简单示例
就用单词计数这个例子,需要统计的单词存在HBase中的word表,MapReduce执行的时候从word表读取数据,统计结束后将结果写入到HBase的stat表中. 1.在eclipse中建立一个ha ...
- django admin 导出数据简单示例
借鉴博客:https://www.lijinlong.cc/django/djxs/2101.html 具体代码实现: class TipReport(admin.ModelAdmin): actio ...
- IO流读写数据简单示例
常用的字节输入流有:InputStream ,FileInputStream,BufferedInputStream 常用的字节输出流有:OutputStream,FileOutputStream,B ...
- sql server随机排序和随机取出n条数据
问题:博主在2010-2011学年,广东技术师范大学大四的时候,去过红海人力集团面试数据库职位,很清楚记得当时有一道笔试题目是:编写sql从表里面随机取出10条记录. 解决方案:在sql server ...
- js从数组中随机取出不同的元素
前言 上午处理个需求需要从一个总数组中随机取出不同的元素.共使用两个方法.第一种方法较常规,经测试有bug,数据量大以后随机几次返回的对象直接是function而不是object. 当然简单数据类型应 ...
- Nodejs学习笔记(十五)--- Node.js + Koa2 构建网站简单示例
目录 前言 搭建项目及其它准备工作 创建数据库 创建Koa2项目 安装项目其它需要包 清除冗余文件并重新规划项目目录 配置文件 规划示例路由,并新建相关文件 实现数据访问和业务逻辑相关方法 编写mys ...
随机推荐
- python中PIL模块
Image模块 Image模块是在Python PIL图像处理中常见的模块,对图像进行基础操作的功能基本都包含于此模块内.如open.save.conver.show-等功能. open类 Image ...
- 【Java】Windows配置Java环境变量
一.配置环境变量 1.新建系统变量 JAVA_HOME和CLASSPATH 变量名:JAVA_HOME 变量值:D:\jdk\jdk1.7.0_80 变量名:CLASSPATH 变量值:.;%JAVA ...
- 没NOIP了?
HSEZ李亮:“考虑一下来HSEZ当艺术生吧!"
- MySQL传统点位复制在线转为GTID模式复制
1. GTID优缺点 MySQL传统点位复制在5.7版本前是主要的主从复制模式,而随着MySQL5.6版本引入GTID,并且MySQL5.7进行各方面的优化以后,在mySQL5.7(尤其是MySQL ...
- Appium+python自动化(三十九)-Appium自动化测试框架综合实践 - 代码实现(超详解)
简介 经过一段时间的准备,完善的差不多了,继续分享有关Appium自动化测试框架综合实践.想必小伙伴们有点等不及了吧! driver配置封装 kyb_caps.yaml 配置表 参考代码 platfo ...
- Java操作数栈
- 与局部变量表一样,均以字长为单位的数组.不过局部变量表用的是索引,操作数栈是弹栈/压栈来访问.操作数栈可理解为java虚拟机栈中的一个用于计算的临时数据存储区.- 存储的数据与局部变量表一致含in ...
- swoole不断的切换前端链接方法 防止攻击
php不断的切换前端链接方法 防止攻击 swoole写法 每分钟生成一次url后缀 返回到客户端让他们更新 //定时器要写在WorkerStart这个里面哦$ws->on('WorkerStar ...
- PHP根据ip获取地理位置(通过高德地图接口)
PHP根据ip获取地理位置(通过高德地图接口)<pre>//restapi.amap.com/v3/ip?key=2004f145cf3a39a72e9ca70ca4b2a1dc& ...
- egret开发方法(最笨的方法)
egret开发方法(最笨的方法)1 1个精灵1个对象名字 获取精灵设置属性也是直接获取对象设置属性 (不用想的少些代码 因为没有jquery好用) ps:如果要设置很多个精灵属性 那可以添加到数组 然 ...
- Spring注解之@RestControllerAdvice
前言 前段时间部门搭建新系统,需要出异常后统一接口的返回格式,于是用到了Spring的注解@RestControllerAdvice.现在把此注解的用法总结一下. 用法 首先定义返回对象Respons ...