如果num参数是52,那么有多少可能的返回值呢?是52还是53?如果我正确理解,Math.random使用从0到1的随机值.如果是这样,那么0是一个可能的返回值,所以是52.这样可以得到53个可能的返回值.它是否正确?我问的原因是,我正在学习的一本书使用这个代码一张卡片.我想知道num是否应该等于51?
谢谢 …
function getRandom(num) { var my_num = Math.floor(Math.random * num); return my_num; };
解决方法
Math.floor(Math.random() * num) // note random() is a function.
这将返回从0(包括0)到num(NOT包括num)的所有整数.
Math.random返回0(含)和1(独占)之间的数字.将结果乘以X可以在0(含)和X(独占)之间.添加或减少X将范围移动-X.
// Returns a random number between 0 (inclusive) and 1 (exclusive) function getRandom() { return Math.random(); } // Returns a random number between min and max function getRandomArbitrary(min,max) { return Math.random() * (max - min) + min; } // Returns a random integer between min and max // Using Math.round() will give you a non-uniform distribution! function getRandomInt(min,max) { return Math.floor(Math.random() * (max - min + 1)) + min; }