当前位置: 首页 > Web前端 > HTML

无序数组中发现的问题

时间:2023-04-02 12:24:04 HTML

今天遇到了一个问题,给定一个数组,请对其进行无序排列,令arr=[1,2,3,4];arr.sort(()=>Math.random()>0.5?1:-1);结果数组将乱序;arr.sort(()=>Math.random()-0.5);arr.sort(()=>Math.random()>0.5),如果函数参数的返回值为布尔值,发现火狐浏览器正常执行,但是chome浏览器无法执行,数组顺序不变。得出结论,火狐浏览器支持对sort()函数参数中布尔值类型返回值的判断。实验中,发现多次都没有发现数组发生变化,于是对sort函数的排序产生了兴趣,发现只要有3个返回正数,数组就不会发生变化;真是奇怪!