使用jQuery随机生成数字?

34

有没有一种简单的jQuery方法可以随机生成数字,然后在几秒钟后选择一个1-6之间的数字呢?[像掷骰子一样]

5个回答

98

这不需要 jQuery。JavaScript 的 Math.random 函数返回介于 0 到 1 之间的随机数,所以如果你想要一个介于 1 到 6 之间的数字,可以这样做:

var number = 1 + Math.floor(Math.random() * 6);

更新:(根据评论)如果你想要显示一个随机数,每隔一段时间就更改一次,你可以使用setInterval创建一个定时器:

setInterval(function() {
  var number = 1 + Math.floor(Math.random() * 6);
  $('#my_div').text(number);
},
1000); // every 1 second

我知道,但我还需要1-6的数字随机动画。 - omnix
太好了!然后在5秒钟后选择一个1-6的随机数,我该怎么做? - omnix
11
@omnix:询问随机数字和计时器是一个合理的问题,但你现在所问的暗示着你对JavaScript一无所知。你应该从阅读好的教程或书籍开始入手。 - casablanca

10

你不需要jQuery,只需使用JavaScript的Math.random函数。

编辑: 如果你想每秒钟随机显示1到6之间的数字,你可以这样做:

<span id="number"></span>

<script language="javascript">
  function generate() {
    $('#number').text(Math.floor(Math.random() * 6) + 1);
  }
  setInterval(generate, 1000);
</script>

3
function rollDice(){
   return (Math.floor(Math.random()*6)+1);
}

这将会给你一个介于0到5之间的数字。 - LukeH

0
在Perl编程中,我使用了rand()函数来生成随机数,并希望只有1、2或3被随机选择。由于Perl在执行"1 + "时会打印出数字一...所以我还写了一个if else语句,如果生成的数字为零,则再次运行该函数,这样就可以完美地解决问题。
打印结果将始终给出1、2或3的随机数字。
这只是另一个想法,肯定有人会说这是新手级别的东西,但同时我也是新手,它确实有效。我的问题是在打印我的内容时,它一直在输出从1开始而不是从0开始进行索引的1。

0
JavaScript 中有一个可用的 random() 函数。请查看 Math.random()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接