本文僅供 Web 開發人員的學習參考哦~
演示用例:查詢“arr”的結果
(1) 數值排序 | 上升 [⇣⁰₉]
const arr = [40, 100, 1, 5, 25, 10];arr。sort(function(a, b){ return a-b;});
之前:[40,100,1,5,25,10]
之後:[1,5,10,25,40,100]
說明:對於數字排序,必須建立 Comparator 實體或比較函式。在上面的程式碼片段中,這相當於
const compare = function(a, b){ return a-b; };
排序結果是
arr。sort(compare);
(2) 數值排序 | 降序[⇣⁹₀]
const arr = [40, 100, 1, 5, 25, 10];arr。sort(function(a, b){ return b-a; // swap the positions of a and b});
之前:[40,100,1,5,25,10]
之後:[100,40,25,10,5,1]
(3) 字母排序 | 上升✷ [⇣ᴬᴢ]
const arr = [“Blue”, “Orange”, “Aqua”, “Marine”];arr。sort();
之前:[“藍色”、“橙色”、“水色”、“海洋”]
之後:[“水色”、“藍色”、“海洋”、“橙色”]
✷字母排序行為在 JavaScript 中不太直觀。僅當陣列中的所有元素都被讀取為(型別)字串時,內建的預設 sort() 函式才適用於 JavaScript 陣列。
(4) 字母排序 | 降序✷ [⇣ᶻᴀ]
const arr = [“Blue”, “Orange”, “Aqua”, “Marine”];arr。sort()。reverse();
之前:[“藍色”、“橙色”、“水色”、“海洋”]
之後:[“橙色”、“海洋”、“藍色”、“水綠色”]
✷與僅適用於字串實體的 sort() 函式不同,JavaScript 中的函式 reverse() 適用於整個陣列並交換元素的位置而不管(型別)。第一個元素成為最後一個元素,反之亦然。
(5) 日期排序 | 上升 [▲]
const arr = [“2015-03-25”, “2015-02-01”, “2015-01-03”, “2015-02-02”];arr。sort(function(a, b){ return new Date(a)-new Date(b);});
之前:[“2015-03-25”、”2015-02-01”、”2015-01-03”、”2015-02-02”]
之後:[“2015–01–03”、”2015–02–01”、”2015–02–02”、”2015–03–25”]
說明:Date 的排序行為與數字排序非常相似。然而,JavaScript 陣列中的 String 實體必須首先被解析為 Date 物件,因為它們可以根據相對日期出現進行排序。
(6) 日期排序 | 降序 [▼]
類似於數字排序。。。
const arr = [“2015-03-25”, “2015-02-01”, “2015-01-03”, “2015-02-02”];arr。sort(function(a, b){ return new Date(b)-new Date(a); // swap the positions of a and b});
之前:[“2015-03-25”、”2015-02-01”、”2015-01-03”、”2015-02-02”]
之後:[“2015–03–25”、”2015–02–02”、”2015–02–01”、”2015–01–03”]
以上是對 JavaScript 陣列進行排序的 6 個程式碼片段列表的總結!
- End -