用math.random随机排列数组

问题描述

| 我的函数会先洗排一个数组然后返回它,但无法正常工作,我也不明白为什么。
numbers.sort(function() { return Math.round(Math.random()); } );
return numbers;
这有效,但是数组中的第一项始终相同。 有人知道为什么吗?     

解决方法

        那是无法排序的方式。您告诉排序器一个值大于另一个值,而在下一个请求时,它可以更小。谁知道w可能会发生。分拣器可能会花费很长时间,性能不佳,或者您可能会撕碎组成Universe的结构。 如果您想对一副纸牌进行排序,我认为最好遍历所有纸牌,并用随机的另一张纸牌交换它们。这样,您可以确定整个甲板仅在一次迭代中就被改组了。     ,        使用Math.floor()代替Math.round()