📅  最后修改于: 2023-12-03 14:54:47.340000             🧑  作者: Mango
在JavaScript中,我们可以使用 Math.random()
方法来生成一个在0到1之间的随机数。但是,这个随机数是不稳定的,每次生成的都不一样,因此需要一些处理来让它更有用。
要生成一个在指定范围内的随机数,我们可以使用以下公式:
Math.floor(Math.random() * (max - min + 1) + min)
其中 max
和 min
分别是所需随机数的最大值和最小值。
示例代码:
// 生成1-100之间的随机整数
const randomNum = Math.floor(Math.random() * (100 - 1 + 1) + 1);
console.log(randomNum);
有时候我们需要将一个数组中的元素打乱顺序,这时候可以使用 Fisher-Yates
洗牌算法。
示例代码:
function shuffleArray(arr) {
for (let i = arr.length - 1; i > 0; i--) {
const j = Math.floor(Math.random() * (i + 1));
[arr[i], arr[j]] = [arr[j], arr[i]];
}
return arr;
}
const myArray = [1, 2, 3, 4, 5];
const shuffledArray = shuffleArray(myArray);
console.log(shuffledArray);
通过使用上述方法,我们可以在JavaScript中生成指定范围的随机数,以及打乱数组元素的顺序。同时,我们也可以通过这些知识来编写更加有趣和实用的代码。