js數(shù)組Array sort方法使用深入分析
javascript 中 Array.sort()方法是用來對數(shù)組項(xiàng)進(jìn)行排序的 ,默認(rèn)情況下是進(jìn)行升序排列,實(shí)例代碼如下:
var arrA = [6,2,4,3,5,1]; arrA.sort(); document.writeln(arrA); //結(jié)果是:1,2,3,4,5,6
sort() 方法可以接受一個 方法為參數(shù) ,這個方法有兩個參數(shù)。分別代表每次排序比較時的兩個數(shù)組項(xiàng)。
sort()排序時每次比較兩個數(shù)組項(xiàng)都回執(zhí)行這個參數(shù),并把兩個比較的數(shù)組項(xiàng)作為參數(shù)傳遞給這個函數(shù)。當(dāng)函數(shù)返回值為1的時候就交換兩個數(shù)組項(xiàng)的順序,否則就不交換。
實(shí)例如下:
var arrA = [6,2,4,3,5,1];
/**//*arrA.sort();
document.writeln(arrA);
*/
function desc(x,y)
...{
if (x > y)
return -1;
if (x < y)
return 1;
}
function asc(x,y)
...{
if (x > y)
return 1;
if (x < y)
return -1;
}
arrA.sort(desc); // sort by desc
document.writeln(arrA);
document.writeln("<br>");
arrA.sort(asc); //sort by asc
document.writeln(arrA);
//輸出結(jié)果:
6,5,4,3,2,1
1,2,3,4,5,6
另外,可以直接把一個無名函數(shù)直接放到sort()方法的調(diào)用中。如下的例子是將奇數(shù)排在前面,偶數(shù)排在后面,例子如下:
var arrA = [6,2,4,3,5,1];
arrA.sort( function(x, y) ...{
if (x % 2 ==0)
return 11;
if (x % 2 !=0)
return -1;
}
);
document.writeln(arrA);
//輸出:1,5,3,4,6,2
這篇關(guān)于js數(shù)組Array sort的方法就介紹到這了,需要的朋友可以參考一下。
相關(guān)文章
淺談JSON.parse()和JSON.stringify()
本文給大家簡單描述了下JSON.parse()和JSON.stringify()的異同點(diǎn),十分的實(shí)用,有需要的小伙伴可以參考下2015-07-07
JavaScript筆記之?dāng)?shù)據(jù)屬性和存儲器屬性
本文給大家介紹js數(shù)據(jù)屬性和存儲器屬性,及兩種屬性的區(qū)別,對js數(shù)據(jù)屬性存儲器屬性相關(guān)知識感興趣的朋友一起學(xué)習(xí)2016-03-03
一文學(xué)習(xí)JavaScript?使用誤區(qū)
在?JavaScript?程序中如果你在?if?條件語句中使用賦值運(yùn)算符的等號?(=)?將會產(chǎn)生一個錯誤結(jié)果,?正確的方法是使用比較運(yùn)算符的兩個等號?(==),這篇文章主要介紹了一文學(xué)習(xí)JavaScript?使用誤區(qū),需要的朋友可以參考下2023-02-02

