
function re(){
var result = Mathfloor(Mathrandom()1000);
if(result<10){
return "00"+result;
}else if(result<100){
return "0"+result;
}else{
return result;
}
}
产生0-10的随机数主要有两种方法
用Mathrandom函数来实现
parseInt(10Mathrandom())
写一个方法,通过传值来实现,这样方便扩展
/
产生一个数组,数组的值是min到max之间的数,随机排列
function RandomArr(Min, Max) {
var array = new Array();
var cha=Max-Min;
for (var i = 0; ; i++) {
if (arraylength < cha) {
//产生随机数 0到count不包含count的随机数
var randomNub = Min+(Mathfloor(Mathrandom() cha));
//Jquery判断数组array中是否包含元素randomNub
if (-1 == $inArray(randomNub, array)) {
arraypush(randomNub);
}
}else{
break;
}
}
return array;
}
//这里是0-10之间的数,不包含10
var array=RandomArr(0,10);
function nameRnd(name) {
return [name]reduce((t, c) => (t ccodePointAt(0)) % 123, 1);
}
nameRnd('张三'); // 21
nameRnd('李四'); // 95
那个123是指产生的随机数会在0-122的范围内,可以根据需要自己修改
这里使用的是一个比较简单的哈希函数,将每个字符的编码相乘并取余处理
比如上例中的'张三'两个字的10进制编码分别是24352,19977,那么计算过程如下
24352 % 123 = 121
121 19977 = 2417217
2417217 % 123 = 21
你是不是已经会产生1~80的随机数了?如果会了,只需要把你的结果转换为2位格式的字符串即可。
为什么要用字符串,因为对于整数来说,十进制的01和1没有本质区别的。从这个意义上,严格地说产生的是随机字符串的,绝对不是随机数。
下面是一个完整的应用程序例子:
<html><head></head>
<body>
<script language="javascript" type="text/javascript">
var x;
for (i=0;i<=80;i++){
x=parseInt(Mathrandom()(80-1))+1;
if (x<10) x='0'+x;
documentwrite(x,'<br>');
}
</script>
</body></html>
以上就是关于js中随机生成001-999的随机数全部的内容,包括:js中随机生成001-999的随机数、用javascript做一个产生0-10的随机数、JS怎么根据输入的名字生成一个随机数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)