function random_num(length=5,arr=[]) {
let random = Math.floor(Math.random()*3)+1, repeat = false;
if(arr.length > length-1) return arr;//达到了指定数组长度,直接输出数组
for(let item in arr){
if(arr[item] === random) return random_num(length, arr);//如果数组中存在与本次随机产生的随机数有相同的,就递归调用
}
arr.push(random);//将产生的随机数,追加进 arr
return random_num(length, arr);//然后进行递归调用
}
console.log(random_num(2))
输出结果:
[1, 3]