1 回答

TA貢獻1878條經(jīng)驗 獲得超4個贊
生成隨機數(shù),判斷是否在前一次的數(shù)組中出現(xiàn),如果不是就push到新數(shù)組里。
const generatorRandomArray = (function() {
//用于保存前一次計算得到的數(shù)組
let savedArray = [];
//生成隨機數(shù)的函數(shù)
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);
//判斷隨機數(shù)是否在前一次數(shù)組中出現(xiàn)
if (!savedArray.includes(num) && !newArray.includes(num)) {
break;
}
}
newArray.push(num);
}
savedArray = [...newArray];
return newArray;
};
})();
函數(shù)接受一個參數(shù)表示隨機數(shù)的邊界,比如generatorRandomArray(300)表示生成的隨機數(shù)在1~300
添加回答
舉報