1 回答
TA贡献1878条经验 获得超4个赞
生成随机数,判断是否在前一次的数组中出现,如果不是就push到新数组里。
const generatorRandomArray = (function() {
//用于保存前一次计算得到的数组
let savedArray = [];
//生成随机数的函数
function generatorRandom(n) {
return Math.ceil(Math.random() * n);
}
return function(n) {
let newArray = [];
for (let i = 0; i < 5; i++) {
var num;
while (true) {
num = generatorRandom(n);
//判断随机数是否在前一次数组中出现
if (!savedArray.includes(num) && !newArray.includes(num)) {
break;
}
}
newArray.push(num);
}
savedArray = [...newArray];
return newArray;
};
})();
函数接受一个参数表示随机数的边界,比如generatorRandomArray(300)表示生成的随机数在1~300
添加回答
举报
