// 打乱数组的示例代码
function shuffleArray(array) {
// 使用 Fisher-Yates 洗牌算法打乱数组
for (let i = array.length - 1; i > 0; i--) {
// 生成一个从 0 到 i 的随机索引
const j = Math.floor(Math.random() * (i + 1));
// 交换当前元素和随机索引处的元素
[array[i], array[j]] = [array[j], array[i]];
}
return array;
}
// 示例用法
const originalArray = [1, 2, 3, 4, 5];
const shuffledArray = shuffleArray([...originalArray]); // 使用扩展运算符创建原数组的副本,避免修改原数组
console.log(shuffledArray);
Math.random():生成一个介于 0 和 1 之间的随机数,通过乘以 (i + 1) 来确保生成的索引在有效范围内。[array[i], array[j]] = [array[j], array[i]]; 这行代码用于交换两个数组元素的位置,语法简洁且易读。...):在调用 shuffleArray 函数时使用扩展运算符来创建原数组的副本,这样可以避免直接修改原数组。上一篇:js 数组 findindex
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站