【发布时间】:2012-08-15 03:24:43
【问题描述】:
可能重复:
Generating random numbers in Javascript in a specific range?
最好的方法是使用 Math 对象来获取随机数:
- [a, b](双整数)(2 种情况)
- (a, b)(双整数)
- [a, b)(双整数)
- (a, b] (双整数)
有人可以帮助我吗?谢谢!
【问题讨论】:
标签: javascript math random
可能重复:
Generating random numbers in Javascript in a specific range?
最好的方法是使用 Math 对象来获取随机数:
有人可以帮助我吗?谢谢!
【问题讨论】:
标签: javascript math random
我想这就是你要找的东西:
var rand = function(a,b){
return a+Math.round((b-a)*Math.random());
}
var r = rand(5,10);
console.log(r);
【讨论】:
Math.extendedRandom = function(a,b,excludeA,excludeB, round)
{
var start = a;
var end = b;
if(excludeA)
start++;
if(excludeB)
end--;
var res = (end-start) * Math.random();
return start + (round ? Math.floor(res) : res);
};
【讨论】:
最简单的情况是第三种,已经是Math.random在JavaScript中的实现了。
第一种情况是answered by Trevor in this question。不过,请务必阅读其他答案和 cmets,以清楚了解其中的含义。
同样,nickf 在同一个问题中回答了第四种情况。
第二种情况可以通过 Trevor 的答案的变体来处理:
function zero_exclusive_random(){
var r = Math.random();
return r == 0 ? zero_exclusive_random() : r;
}
【讨论】: