数组中有两个可以重新排序的方法:reverse()和sort()
reverse()
表示反转数组项的顺序
sort()
在默认情况下会按从小到大对数组进行排序,因此如果恰好有个数组arr = [1,10,5,15,5],按照预想,arr.sort()之后顺序应该为[1,5,10,15]。
但是!由于sort()调用的是toString()方法,然后比较得到的字符串。因此在对arr排序时,由于'10'位于'5'的前面,因此运行arr.sort()之后,结果实际为[1,10,15,5,5],所以,为了保持排序的正确性,可以在sort()方法传递一个比较函数,如下:
function compare(num1, num2) {
return num1 - num2;
};
arr.sort(compare);//结果为[1,5,5,10,15]
参考:《Javascript高级程序设计》(第3版)