Note that the sort is done on the original array, and no replicas are generated.
For example, an array is [20,17,15,30,100], and the result of the default sort is 100,15,17,20,30. You can see that you don't sort by the size of a number, and if you want to sort by size, you can implement a function yourself, such as:
The code is as follows |
Copy Code |
function Intsort (A, b) { return a-b; } var arr = [20,17,15,30,100]; Arr.sort (Intsort); or by the way of an anonymous function Arr.sort ( function (A, b) { return a-b; } ); |
Reverse order
Arr.sort (Intsort). reverse (); In addition, if you want to arrange in reverse order, you can sort the array first, and then call the reverse method.
Cases
The code is as follows |
Copy Code |
<! DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 transitional//en" "Http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd "> <meta http-equiv= "Content-type" content= "text/html; Charset=utf-8 "/> <title>javascript Array Ordering </title> <script type= "Text/javascript" > s = [ {A: ' Joe ', Last: ' awk '}, {A: ' Zwe ', Last: ' Oli '}, {A: ' Joe ', Last: ' ASP '} ]; for (Var i=0;i<s.length;i++) { document.write (S[i].first + "" + S[i].last + "<br/>"); } document.write ("S.sort (function (a,b) { var result = A.first.localecompare (B.first); if (result = = 0) result = A.last.localecompare (b.last); return result; }) for (Var i=0;i<s.length;i++) { document.write (S[i].first + "" + S[i].last + "<br/>"); } </script> <body> </body> |