javascript - 使用 math.random 随机排列数组

标签 javascript arrays random

我打乱数组然后返回它的函数无法正常工作,我不明白为什么。

numbers.sort(function() { return Math.round(Math.random()); } );
return numbers;

这有效,但是数组中的第一项始终相同。

有人知道为什么吗?

最佳答案

这不是排序的方法。您告诉排序器一个值大于另一个,而在下一个请求中它可以更小。谁知道会发生什么。分拣机可能需要很长时间,性能很差,或者你可能会撕裂构成宇宙的结构。

如果你想对一副纸牌进行排序,我认为最好遍历所有纸牌,然后将每张纸牌与随机的另一张纸牌交换。这样,您就可以确定整副牌只在一次迭代中洗牌。

关于javascript - 使用 math.random 随机排列数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6185104/

相关文章:

JavaScript 数组 JSON.parse(字符串)

javascript - 用Js传递Json的值

java - 从坐标获取随机位置

python - 无需替换即可生成 numpy.random.choice 的二维数组

c - 查找数组中的最大元素

javascript - 在 $.each() 中搜索并替换

javascript - 根据选中的 html 复选框设置 java 字符串变量值

javascript - 基于 promise 的对话 vue js?

c++ - 为什么数组没有形成?

c++ - 将数组设置为未知大小的不同数组