/**
* 获取指定个数的随机整数
* n:需要的整数个数
* arr: 返回包含n个整数的数组,如果n不合法,则返回空数组
*/
function getRand(min, max) {
return parseInt(Math.random()*(max-min) + min);
}
function isRepeat(arr, rnd) {
if(arr.length <= 0) {
return false;
}
return arr.findIndex(item=>item === rnd) === -1 ? false : true;
}
function isThere(n) {
return n ? true : false;
}
function typeOk(n) {
return typeof n === "number" ? true : false;
}
function rangeOk(n, min, max) {
return n >= min && n <= max ? true : false;
}
function fn(n) {
// 健壮性
if(!isThere(n)) return [];
if(!typeOk(n)) return [];
if(!rangeOk(n, 0, 31)) return [];
// 宽容性
// n是小数时...
// n是字符串数字时...
// 准备一个容器
let arr = [];
for (let index = 0; index < n; index++) {
// 创建一个随机数
let rnd = getRand(2,32);
// 检查是否重复
if(isRepeat(arr, rnd)) {
index--;
}else{
arr.push(rnd);
}
}
return arr;
}
console.log(fn(30).sort((a,b)=>a-b));
获取指定个数的随机数
最新推荐文章于 2024-03-25 10:48:17 发布