我打乱数组然后返回它的函数无法正常工作,我不明白为什么。
numbers.sort(function() { return Math.round(Math.random()); } );
return numbers;
这有效,但是数组中的第一项始终相同。
有人知道为什么吗?
最佳答案
这不是排序的方法。您告诉排序器一个值大于另一个,而在下一个请求中它可以更小。谁知道会发生什么。分拣机可能需要很长时间,性能很差,或者你可能会撕裂构成宇宙的结构。
如果你想对一副纸牌进行排序,我认为最好遍历所有纸牌,然后将每张纸牌与随机的另一张纸牌交换。这样,您就可以确定整副牌只在一次迭代中洗牌。
关于javascript - 使用 math.random 随机排列数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6185104/