JavaScript的随机是需要用到Math.random()的,它的范围是[0~1)的小数,给它添加的条件有三种:
1:Math.round(n),它的意思是四舍五入后的整数的意思.
2:Math.ceil(n),它的意思是向上取整
3:Math.floor(n),它的意思是向下取整
下面呢,是我设的几个例子
<div id="top"></div>
<script>
document.getElementById("top").innerHTML = Math.random();这里输出的是一个随机小数。例如:0.4383010101856428
document.getElementById("top").innerHTML =Math.round(Math.random()) ;当Math.round(n)和Math.random(n),一起使用时,得到的是0和1,因为四舍五入后的0~1的小数,得到的只有0和1;
document.getElementById("top").innerHTML =Math.ceil(Math.random());只能得到1,因为是向上取整的,所以在0~1的范围内会得到1的值
document.getElementById("top").innerHTML =Math.floor(Math.random());只能得到0,因为是向下取整的,所以在0~1的范围内会得到0的值
</script>
1. min ≤ r ≤ max (一般这种比较常见)
function RandomNum(Min,Max){
// var Random = Max - Min;//声明变量名为Random得到Max与Min的差值
// var random = Math.random();//声明变量为random得到Math.random
// var num =Min+ Math.round(random*Random);//初始值+(随机数*差值)=范围
// return num; 返回值
// }
// document.getElementById("top").innerHTML = RandomNum(Min=5,Max=10);输出5 ≤ r ≤ 10的范围内的随机值
2. min ≤ r < max
function RandomNum(Min = 1, Max = 5) {
// var Range = Max - Min;
// var Rand = Math.random();
// var num = Min + Math.floor(Rand * Range);
// return num;
// }
// document.getElementById('top').innerHTML = RandomNum();
3.min < r ≤ max
function RandomNum(Min=1 , Max=3) {
// var Range = Max - Min;
// var Rand = Math.random();
// if (Math.ceil(Rand * Range) == 0) { //判断Math.ceil(Rand * Range)得到的是否为0,若等于0,那么Min+1。
// return Min + 1;
// }
// var num = Min + Math.ceil(Rand * Range);
// return num;
//
// }
// document.getElementById('top').innerHTML = RandomNum();
4.min < r < max
function RandomNum(Min=1, Max=8) { // var Range = Max - Min; // var Rand = Math.random(); // var num = Math.round(Rand*Range+Min);//先得到一开始需要的范围:min ≤ r ≤ max // if (num == Min){ //如果得到的num的值等于Min的时候,让得到的值num+1,这样的话我们可以得到:min < r ≤ max // return num+1; // }else if(num == Max){ //如果得到的num的值等于Max的时候,让得到的值num-1:这样的话我们可以得到:min ≤ r < max
// return num-1;
}
return num
}
document.getElementById('top').innerHTML = RandomNum();