用JS的随机数生成函数random()配合其他数学函数可以限制随机数的取值。
JS的随机数函数及相关函数:
Mathrandom(); 结果为0-1间的一个随机数(包括0,不包括1) 。
Mathfloor(num); 参数num为一个数值,函数结果为num的整数部分。
Mathceil(n); 返回大于等于n的最小整数。
Mathround(num); 参数num为一个数值,函数结果为num四舍五入后的整数。
因此可以用以上函数配合实现取1-6的随机数:
1,用Mathceil(Mathrandom()6);时,主要获取1到6的随机整数,取0的几率极小。
2,用Mathround(Mathrandom()5 + 1),可基本均衡获取1到6的随机整数,其中获取最小值0和最大值6的几率少一半。
3,用Mathfloor(Mathrandom()6 + 1);时,可均衡获取1到6的随机整数。<script>
var arr=new Array(4);
for(i=0;i<arrlength;i++)
arr[i]=parseInt(Mathrandom()10);
var flag=0;
for(i=0;i<arrlength-1;i++){
for(j=i+1;j<arrlength;j++){
if(arr[i]==arr[j]){flag=1;break;}
}
if(flag)break;
}
alert(arr+"\n"+(flag"重复":"不重复"));
</script>
var backgroundColorArray = ["red","green","violet","peachy","brown","blue"];
var backgroundColor = "t-"+ backgroundColorArray[Mathfloor(Mathrandom()5)];
var backgroundPic = "t-pattern-"+Mathfloor(Mathrandom()9+1);
documentbodyclassName = backgroundColor + " " + backgroundPic ;
放在JS的全局变量里就可以,你所说的我写过,给你贴出来参考一下。
var encryption = function(){
var date = new Date();
var times1970 = dategetTime();
var times = dategetDate() + "" + dategetHours() + "" + dategetMinutes() + "" + dategetSeconds();
var encrypt = times times1970;
if(argumentslength == 1){
return arguments[0] + encrypt;
}else{
return encrypt;
}
}
使用方法,定义一个全局变量,比如 var aa = encryption(); 即可。
var
a
=
[1,2,3,3,4,5,6,7,8,9];function
sendnum(arr){
return
arr[mathfloor(mathrandom()arrlength)];}sendnum(a);这样就可以实现每次返回是一个随机数组中的一个数。主要用的就是random的方法。random方法,是返回(0,1]
的数,但取不到1,所以用mathfloor向下取整。
// JS小菜鸟,大佬轻喷
Mathrandom(); //该方法产生一个0到1之间的浮点数。Mathfloor(Mathrandom()10+1); //生成1-10的随机数
Mathfloor(Mathrandom()10);//生成0-9的随机数
// 最简单的方法是自己写个例子验证一下
for(var i=0;i<1000;i++){var j = Mathfloor(Mathrandom()100);
if(j==90){
consolelog(j);
}
if(j==100){
consolelog(j);
}
}
以上就是关于怎么样用JS的随机数生成函数生成1~6之间的某一个整数全部的内容,包括:怎么样用JS的随机数生成函数生成1~6之间的某一个整数、js 获取可重复的随机数、js 取多个随机数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)