Javascript 生成随机数的方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Javascript 生成随机数的方法相关的知识,希望对你有一定的参考价值。

使用Math.random()函数生成m到n间的随机数字


一.随机生成m(小)-n(大)的数,包含m(小)但不包含n(大)。 下面用小、大表示两数

方法一: num=parseInt(Math.random()*(大-小)+小,10);

方法二(m=0的时候): num=parseInt(Math.random()*大,10); 常用于生成数组元素下标,即小=0,把大换成数组长度,也可以用 num=parseInt(Math.random()*大);

function withMwithoutN(m,n) {
  return parseInt(Math.random()*(n-m)+m,10);
}



二.随机生成m(小)-n(大)的数,不包含m但包含n

num=Math.floor(Math.random()*(大-小)+小)+1;

function withoutMwithN(m,n) {
    return Math.floor(Math.random()*(n-m)+m)+1;
}



三.随机生成m(小)-n(大)的数,不包含m和n

num=Math.round(Math.random()*(大-小-2)+小+1) 或者 Math.ceil(Math.random()*(大-小-2)+小);

function withoutMwithoutN(m,n){
    return Math.round(Math.random()*(n-m-2)+m+1);
}



四.随机生成m(小)-n(大)的数,包含m和n

num=Math.round(Math.random()*(大-小)+小); 或者 Math.ceil(Math.random()*(大-小)+小);

function withMwithN(m,n){
    return Math.round(Math.random()*(n-m)+m);
}



案例:随机生成50个1到33的数,包含1和33:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  
    <script>
        for(var i=0;i<50;i++){
            var num=withMwithN(1,33);
            document.write(num+", ");
        }
    </script>
</head>
<body>

</body>
</html>


以上是关于Javascript 生成随机数的方法的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript 有用的代码片段和 trick

需要一个JavaScript代码,生成1--100之间的随机数一共一百个,每行显示10个数字,而且这

Javascript 生成随机数的方法

javascript 随机数 与高级应用 附vbscript(asp) 随机数总结

关于一个javascript 产生随机数的function 的一点疑问 求教了~~

我正在尝试使用 JavaScript 生成随机颜色代码