js生成指定位数,指定数量不重复随机数
使用递归思想
/**
*
* @param {*} mynum 生成数量
* @param {*} mywei 生成位数
* @param {*} callback 回调函数
*/
const bossRand = (mynum, mywei, callback) => {
let RandomArr = []
function createRandom() {
// 生成指定位数
let t = '';
for (let i = 0; i < mywei; i++) {
t += Math.floor(Math.random() * 10)
}
if(RandomArr.length ===0){
RandomArr.push(t)
createRandom(mynum,mywei)
} else {
if(RandomArr.length <mynum){
if(!RandomArr.includes(t)){
RandomArr.push(t)
createRandom(mynum,mywei)
} else {
createRandom(mynum,mywei)
}
}else{
callback(RandomArr)
}
}
}
createRandom();
}
bossRand(10,1,(arr)=>{console.log(arr)})
效果查看