數(shù)組中有兩個(gè)可以重新排序的方法:reverse()和sort()
reverse()
表示反轉(zhuǎn)數(shù)組項(xiàng)的順序
sort()
在默認(rèn)情況下會(huì)按從小到大對(duì)數(shù)組進(jìn)行排序,因此如果恰好有個(gè)數(shù)組arr = [1,10,5,15,5]救湖,按照預(yù)想趟紊,arr.sort()之后順序應(yīng)該為[1,5,10,15]。
但是芬失!由于sort()調(diào)用的是toString()方法,然后比較得到的字符串。因此在對(duì)arr排序時(shí)剃斧,由于'10'位于'5'的前面,因此運(yùn)行arr.sort()之后忽你,結(jié)果實(shí)際為[1,10,15,5,5]幼东,所以,為了保持排序的正確性科雳,可以在sort()方法傳遞一個(gè)比較函數(shù)根蟹,如下:
function compare(num1, num2) {
? return num1 - num2;
};
arr.sort(compare);//結(jié)果為[1,5,5,10,15]
參考:《Javascript高級(jí)程序設(shè)計(jì)》(第3版)