javascript生成随机数的问题
本文介绍了javascript生成随机数的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
W3C上有一个教程代码生成1-3的随机数是这样的
slotOne = Math.floor(Math.random() * (3 - 1 + 1)) + 1;
(3 -1 + 1)这个是为什么?就我所知道的,要生成0-n的随机数
Math.floor(Math.random() * n);
所以既然是1-3,应该是
Math.floor(Math.random() * 3) + 1;
希望有大神解释一下...
是网站人员的问题,还是有其他的原因...
解决方案
生成一个m~n
的随机数,则最小值为m+0
,最大值为m+(n-m+1)
;
而Math.random()
生成的是0~1
,故Math.floor(Math.random() * (n - m + 1)) + m
套入1-3
就是你要的值
这篇关于javascript生成随机数的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文