大家知道怎么计算1到10之间的随机数吗,下面听我道来,
首先:Math.random()这个方法就是计算随机数的返回大于等于0小于1的随机数,
Math.random()*10岂不是返回大于等于0返回小于10吗,但是他只能返回小于10的数,不能返回10,怎么办呢,我们在原来的函数上再加1就变成了Math.random()*10+1;此时就可以返回1到10的随机数了,但是我们返回的很多是小数,不符合要求,下面就用到了Math.floor()这个函数了,这个函数执行向下舍入,也就是说10.99经过Math.floor都是10,Math.ceil(是向上舍入)即使是10.00001,返回也是11,现在我们就求出来结果了,Math.floor(Math.random()*10+1);这样就能求出结果了;
那2到10之间的函数怎么办,直接上代码Math.floor(Math.random()*9+2);
那3到11呢,4到88呢,每次这样自己算也不是办法,下面给大家介绍个通用方法;
function selectfrom (lowValue,highValue){
var choice=highValue-lowValue+1;
return Math.floor(Math.random()*choice+lowValue);
}
然后直接调上面的方法就OK;
前篇博客太粗糙,幸得一园友指点,以后命名啥的都写规范了,欢迎大家留言讨论js
新闻热点
疑难解答