美文网首页
简单双色球的实现思路及原理

简单双色球的实现思路及原理

作者: 敲键盘的那些年 | 来源:发表于2019-06-02 22:56 被阅读0次

对于双色球,我相信很多人并不陌生,看到其他人中奖后瞬间暴富的经历,我们的内心一定不平静吧,为什么那个人不是自己呢? 下面就由我来为大家提高一下中奖的概率。

话不多说,正菜开始:

实现思路: (1) 红色球有6个数 范围为1~32,绿色球有1个数 范围为1~16
(2) 红色球打印在页面的随机数字中不能出现重复的

1、封装方法 用来取到随机数字

    function random(start, end) {
          return Math.floor(Math.random() * (end - start + 1) + start);
        }

2、获取元素

      var lis = document.getElementsByClassName('balls-container')    [0].children;

      var start = document.getElementById('start');

      var end = document.getElementById('end');

      var timer = null;

3、 找出球上的数字

function dbball() {

// 蓝色球随机数字

      var blueBall = random(1, 16);

// 声明一个新数组,用来存放随机出的红色球数字

      var redBalls = [];

      while (redBalls.length < 6) {

          var temp = random(1, 32);

    // 判断条件: 如果数组中不存在随机出的数字,就将其添加进数组中

          if (redBalls.indexOf(temp) === -1) {

              redBalls.push(temp);

          }

      }

      return redBalls.concat(blueBall);

}

4、 打印在页面中

function update() {

      var balls = dbball();

      for (var i = 0, len = lis.length; i < len; i++) {

          lis[i].innerHTML = balls[i];

          lis[i].className = i === 6 ? 'blue' : 'red';

    }

}

update();

5、绑定事件

function addEvent() {

start.onclick = function() {

    // 清除bug  当连续点击开始按钮时 数字闪烁速度会越来越快 导致停止按钮无效

    if (timer) return; 

    // 设置定时器,当点击开始按钮后,每100ms更新一组数字

    timer = setInterval(function(){

        update();

    },100)

}

// 当点击停止按钮时,清除定时器并将timer赋值为null,为了释放内存

end.onclick = function() {

    clearInterval(timer);

    timer = null;

    }

}

  addEvent();
image

好了,就到这里了,你还在等什么呢? 有了这种作弊利器,还不赶紧去买?但是我们先说好,不中可不能埋怨小编哦,毕竟还有更厉害的呢。

image

如果小编哪里写的不好,希望大家可以指正,互相交流!

相关文章

网友评论

      本文标题:简单双色球的实现思路及原理

      本文链接:https://www.haomeiwen.com/subject/yubfxctx.html