js中陣列 Array 的排序 sort 注意事項

2022-01-31 17:52:29 字數 731 閱讀 6964

直接看**吧,測試結果也貼在裡面了

vararrdemo 

=new

array();

arrdemo[0] 

=10;

arrdemo[1] 

=50;

arrdemo[2] 

=51;

arrdemo[3] 

=100

;arrdemo.sort(); 

//呼叫sort方法後,陣列本身會被改變,即影響原陣列

alert(arrdemo);

//10,100,50,51 預設情況下sort方法是按ascii字母順序排序的,而非我們認為是按數字大小排序

arrdemo.sort(

function

(a,b)

);//

從小到大排序

alert(arrdemo);

//10,50,51,100

arrdemo.sort(

function

(a,b)

);//

從大到小排序

alert(arrdemo);

//100,51,50,10

結論:1.陣列呼叫sort方法後,會影響本身(而非生成新陣列)

2.sort()方法預設是按字元來排序的,所以在對數字型陣列排序時,不可想當然的以為會按數字大小排序!

3.要改變預設的sort行為(即按字元排序),可以自行指定排序規則函式(如本例所示)

js 中的陣列Array

1 ecmascript 中的陣列與其他語言中的陣列有些不同,ecmascript中的陣列可以每一項都不同型別,陣列的大小可以動態調整。var colors new array var colors new array 20 var colors new array red blue green v...

js中陣列 Array 的排序 sort 注意事項

var arrdemo new array arrdemo 0 10 arrdemo 1 50 arrdemo 2 51 arrdemo 3 100 arrdemo.sort 呼叫sort方法後,陣列本身會被改變,即影響原陣列 alert arrdemo 10,100,50,51 預設情況下sort...

js中陣列 Array 的排序 sort 注意事項

直接看 吧,測試結果也貼在裡面了var arrdemo new array arrdemo 0 10 arrdemo 1 50 arrdemo 2 51 arrdemo 3 100 arrdemo.sort 呼叫sort方法後,陣列本身會被改變,即影響原陣列 alert arrdemo 10,100...