在JavaScript中,要生成一個不重復的隨機數(shù),你可以使用以下方法:
以下是一個示例代碼:
function getRandomInt(min, max) {
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min + 1)) + min;
}
function generateUniqueRandomNumbers(count, min, max) {
if (count > (max - min + 1)) {
throw new Error("The specified count is larger than the range of unique numbers.");
}
const uniqueRandomNumbers = new Set();
while (uniqueRandomNumbers.size < count) {
const randomNumber = getRandomInt(min, max);
uniqueRandomNumbers.add(randomNumber);
}
return Array.from(uniqueRandomNumbers);
}
// 使用示例:生成1到10之間(包括1和10)的3個不重復隨機數(shù)
const uniqueRandomNumbers = generateUniqueRandomNumbers(3, 1, 10);
console.log(uniqueRandomNumbers);
在這個示例中,getRandomInt
函數(shù)用于生成一個指定范圍內(nèi)的隨機整數(shù)。generateUniqueRandomNumbers
函數(shù)接受一個count
參數(shù),表示要生成的不重復隨機數(shù)的數(shù)量,以及min
和max
參數(shù),表示隨機數(shù)的范圍。該函數(shù)使用Set
數(shù)據(jù)結(jié)構(gòu)來存儲不重復的隨機數(shù),直到達到指定的數(shù)量為止。最后,將Set
轉(zhuǎn)換為數(shù)組并返回。