js陣列sort 排序的問題

2022-08-11 15:15:17 字數 588 閱讀 7538

最近跟自以為很了解的陣列幹上了,就像許多我們認知的東西一樣,總以為自己很了解的東西,其實並不了解。

var a=[12,4,1,43,5,3,52];

alert(a);   //源:12,4,1,43,5,3,52

alert(a.sort());  // 1,12,3,4,43,5,52  這麼排!不符合咱們的口味吧!

alert(a.sort(function(a,b)));  // 1,3,4,5,12,43,52  嗯嗯,這就看的順眼多了

這是為什麼呢?!!! because :如下

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

alert(a.sort());//1,12,3,4,43,5,52 預設情況下sort方法是按ascii字母順序排序的,而非我們認為是按數字大小排序

a.sort(function(a,b));//從小到大排序

a.sort(function(a,b));  //從小到大的另一種寫法

a.sort(function(a,b));//從大到小排序

a.sort(function(a,b));//從大到小排序

js 陣列排序函式sort

arrayobj.sort sortfunction 引數 sortfunction 可選項。是用來確定元素順序的函式的名稱。如果這個引數被省略,那麼元素將按照 ascii 字元順序進行公升序排列。sort 方法將 array 物件進行適當的排序 在執行過程中並不會建立新的 array 物件。如果為...

Js陣列排序函式sort

js實現多維陣列和物件陣列排序,用的其實就是原生sort 函式,語法為 arrayobject.sort sortby sortby 可選。規定排序順序。必須是函式。返回值為對陣列的引用 請注意,陣列在原陣列上進行排序,不生成副本。如果呼叫該方法時沒有使用引數,將按字母順序對陣列中的元素進行排序,說...

Js 陣列排序函式sort

最近看到乙個js函式sort 覺得挺有意思,寫在這裡與大家分享。如果有什麼地方不對或者有更好的寫法,也請大家不吝賜教。sort 返回乙個元素已經進行了排序的 array 物件。1.按字母排序 直接使用sort 函式,預設按字母順序排。var arr new array dd aa bb cc arr...