function method3(arr){
arr.sort(function(){
return Math.random()-0.5;
});
console.log(arr);
}
//这个方法为什么可以实现数组的随机排序呢?
Math.random 是随机 数api 。 sort return 不同的数字 就随机排序了呗
不是Math.random()-0.5实现的数组随机排序,是arr.sort()实现的排序,Math.random()-0.5这个只是产生随机数。
感谢采纳,如有疑问,可以继续交流!
1.因为sort方法是对数组元素进行排序,sort方法内部return的东西是排序规则。
2.math.random是生成0-1的随机数,再减0.5,那么return的是正数和负数的概率是一样的
如有帮助,麻烦点个[采纳此答案]谢谢^O^
method3这个方法的功能应该是随机打乱数组吧,接着楼上的说,Math.random()-0.5随机生成 [-0.5,0.5)区间的数,sort()可根据方法返回值的正负来排序,小于零升序,大于零降序。