双色球

首先,介绍下双色球:

在中华大陆,有7颗龙珠,其中由6颗红珠和1颗蓝珠组成,7颗龙珠上镶嵌数字,红珠上的数字为01-33(没有重复数字);蓝珠上的数字为01-16,7颗龙珠的数字每周二,周四,周日都会发生改变。传说,猜中7颗龙珠上数字的人,将获得一笔巨款。

好了我编不下去了,来捋一下需求吧(认真脸)~~~

1、7个球,6个红色,一个蓝色;

2、红球数字为01-33,且不重复,需要注意的是都是两位数;

3、蓝色球是01-16,也是两位数;

4、都是随机的;

有了这些需求,我们可以开始了

这里我们根据需求,封装了随机数的函数,这个函数反出来一个随机数


function rnd(n,m){

    return parseInt(Math.random()*(m-n)+n);

}

用于往个位数前边补零的方法
如果这个数字小于10就反出来 0加上这个数字
否则的话返回空字符串加上这个数字
实现1-9这些数字都变为01-09;

function tuDou(n){

  if(n<10){

    return '0'+n;

  }else{

    return ''+n;

  }

}

用来查重的方法(数组)

function findInarr(item,arr){
    for(var i=0;i<arr.length;i++){
        if(item==arr[i]){
            return true;
        }
    }
}

封装的函数准备好了,我们就可以开始敲代码了
HTML就不用说了,大家做7个球就行了 2333~~~

然后,我们需要的是6个不重复的随机数,范围是1-33;然后还得把1-9变为01-09;
循环6个随机数;
然后查重,补零;
就得到了一个数组 [ 6个不重复数字 ]

var arr = [];
for(var i=0;i<6;i++){
    var n=rnd(0,34);
    if(!findInarr(n,arr)){
        arr.push(tuDou(n));
    }else{
        i--;        
    }   
}

接下来,把数组中的数字循环放入前6个球中

$('div').each(function(){
    $(this).html(arr[$(this).index()])
})

然后蓝球就简单了,定义一个随机数,放到放到蓝色球就行了

var mn = tuDou(rnd(0,16));
$('div:eq(6)').html(mn);

好了,上效果图


双色球.png

OK了,大家可以用随机数加上定时器做一个类似于抽奖的demo;拜拜~~

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.双色球彩票简要介绍 双色球是中国福利彩票的一种玩法。由中国福利彩票发行管理中心统一组织发行。 开奖时球分为两种...
    毛三十阅读 24,910评论 1 7
  • 曾经有一个朋友和我抱怨。说大学了,想做点自己的事,根本没有触及到别人的利益,但是总有人对他冷嘲热讽的。就仿佛他做什...
    路过了你的城市阅读 334评论 0 0
  • 2、敢恨。一个正直的人,一个诚实的人,一个有正义的人,心中一定不允许那些杂质,融入自己的血液,而是永远充满着英雄般...
    桐子树下阅读 650评论 4 12
  • 黛玉,青黑色的玉,人若如玉,必是人间罕物。 ——题记 《红楼》夺目,皆美,有情,...
    寻殊阅读 433评论 0 5
  • Padangusthasana 手抓脚趾站立伸展式 pada意思是脚,Augusta意思是大脚趾 ...
    6b38a4a66238阅读 186评论 0 0