自编函数
编写一个javscript函数 fn,该函数有一个参数 n(数字类型),其返回值是一个数组,该数组内是 n 个随机且不重复的整数,且整数取值范围是 [2, 32]。
function testRan(n) {
var arr=[]; //需要返回的数组
//异常处理,如果n小于 2, 或者大于 32
if(n<2 || n>32) { return; }
if(!n) { return;}
//判断n是否为数字
if(!/^[0-9]+.?[0-9]*$/.test(n)) {
return;
}
var scope={
min:2,
max:32
};
var nl = Math.floor(n); //取整
for(var i=0;i<nl;i++) {
// 产生一个随机数
var num= parseInt((scope.max-scope.min) * Math.random() + 2);
//判断arr数组里是否含有这个num随机数
//arr.indexOf(num)为-1代表不包含
if(arr.indexOf(num)==-1) {
arr.push(num);
}
else {
i--;
}
}
return arr;
}
调用的方法: testRan(10) 会产生一个随机的包含10位数字的数组 ,已测试通过。 在早读上看到的一个题,拿来练手了。

浙公网安备 33010602011771号