小白不太懂,请问为何x>y 返回1 就是从小到大排序。 而x>y 返回-1 就是从小到大排序。
arr.sort(compare),compare是一个比较函数,接受a和b两个参数,如果要升序排列,a和b比较,小于返回-1,大于返回-1,相等返回0,降序的话就反过来。排序思想应该是类似于冒泡排序思想的,通过前后相邻的两个数进行比较,例如8与16,这时将8作为方法函数compare(a,b)参数列表中的a,16作为b,通过语句return a - b;返回一个数值,8-16=-8, 若返回值>=1,则表示a在排序后的序列中出现在b之后,反之在b之前,所以8会在排序后出现在16之前,此时,新的数据序列为8,16,50,6,100,1,再将16作为a,50作为b进行上述的做法,第一轮下来,100就会排在最后,又开始新的一轮排序
13 回答12.7k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
6 回答811 阅读✓ 已解决
6 回答1k 阅读
2 回答1.3k 阅读✓ 已解决
数组方法之sort()详解
sort()方法的用法,参数以及排序原理