JavaScript实现简单的双色球(实例讲解)

 更新时间:2017年07月31日 07:47:10   投稿:jingxian  
下面小编就为大家带来一篇JavaScript实现简单的双色球(实例讲解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

如下所示:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>双色球</title>
  <link rel="stylesheet" type="text/css" href="css/twoToneClass.css" rel="external nofollow" >
</head>
  <script type="text/javascript">
    function getway(){
    //定义一个数组 用来装红色球的随机数
      var reds=[parseInt(Math.random()*33+1)]; //1-33的随机数
      //定义一个数组 用来装蓝色球的随机数
      var blues=[parseInt(Math.random()*16+1)]; //1-16的随机数

      while(reds.length<6){  //双色球是6红1蓝,故长度小于6 说明会循环5次 因为前面reds已经有一次的默认值
        var r=parseInt(Math.random()*33+1); //定义r 随机数的取值与reds一致 用于与reds作比较
        for (var i = 0; i < reds.length; i++) {
          if (reds[i]==r) {    //若 reds中的随机值与r中的相等,则跳出,继续i++取值
            break;        //若reds中的随机值与r中的不相等,则进入else if
          } else if(i==reds.length-1){ //reds.length-1 --> 原先的reds.length为5,减1为4,而数组是从0 开始算,所以这里会循环5次,刚好与 reds.length<6 同步;且 i等于reds.length-1,是让随机数循环5次(另外就是让它找到定义中的最后一位数)
            reds.push(r);        //将r中的值添加到reds中  push():向数组中添加元素
//值得注意是!r与reds作比较时,是以reds中现有的数作比较,因为 reds.push(r); 这句代码已经向reds中添加了数值,所以r不是以reds中自身产生的随机数作比较,而是原先r添加到reds中的值作比较
          }
        }
      }
      //document.write(reds);
      //排序
      reds.sort(function compare(a,b) {
        return a-b;
      })
      //打印随机数
      for (var h = 0; h < reds.length; h++) {
        document.getElementById('tone'+h+'').innerHTML=reds[h];
      }
       document.getElementById('tone6').innerHTML=blues;
    }
    
  </script>
<body>
  <div id="tone0"></div>
  <div id="tone1"></div>
  <div id="tone2"></div>
  <div id="tone3"></div>
  <div id="tone4"></div>
  <div id="tone5"></div>
  <div id="tone6"></div>
  <button type="button" id="cilckMe" onclick="getway()">点我生成双色球</button>
</body>
</html>

以上这篇JavaScript实现简单的双色球(实例讲解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 如何用JavaScript让你的浏览器说话

    如何用JavaScript让你的浏览器说话

    这篇文章主要介绍了如何用JavaScript让你的浏览器说话,对语音感兴趣的同学,可以实验一下
    2021-04-04
  • JavaScript中textRange对象使用方法小结

    JavaScript中textRange对象使用方法小结

    这篇文章主要介绍了JavaScript中textRange对象使用方法小结,需要的朋友可以参考下
    2015-03-03
  • 微信小程序实现表单验证

    微信小程序实现表单验证

    这篇文章主要为大家详细介绍了微信小程序实现表单验证,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • 教你一步步实现一个简易promise

    教你一步步实现一个简易promise

    Promise是异步编程的一种解决方案,比传统的解决方案回调函数和事件更合理且更强大,这篇文章主要给大家介绍了关于如何一步步实现一个简易promise的相关资料,需要的朋友可以参考下
    2021-11-11
  • js对字符串进行编码的方法总结(推荐)

    js对字符串进行编码的方法总结(推荐)

    下面小编就为大家带来一篇js对字符串进行编码的方法总结(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • 多引号嵌套的变量命名的问题

    多引号嵌套的变量命名的问题

    这篇文章主要介绍了多引号嵌套的变量命名的问题,需要的朋友可以参考下
    2014-05-05
  • 基于javascript实现九九乘法表

    基于javascript实现九九乘法表

    这篇文章主要为大家详细介绍了基于javascript实现九九乘法表的相关资料,感兴趣的小伙伴们可以参考一下
    2016-03-03
  • 标准的js无缝滚动效果

    标准的js无缝滚动效果

    这篇文章主要为大家详细介绍了标准的js无缝滚动效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • ESLint和Jest中使用esm示例详解

    ESLint和Jest中使用esm示例详解

    这篇文章主要为大家介绍了ESLint和Jest中使用esm示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • JS中的JSON对象的定义和取值实现代码

    JS中的JSON对象的定义和取值实现代码

    这篇文章主要介绍了JS中的JSON对象的定义和取值实现代码,也是json的入门知识,需要的朋友可以参考下
    2018-05-05

最新评论