本文僅供 Web 開發人員的學習參考哦~
演示用例:查找“arr”的結果
**(1) 數值排序 | 上升 [???]**
```js
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) 數值排序 | 降序[???]**
```js
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) 字母排序 | 上升? [???]**
```js
const arr = ["Blue", "Orange", "Aqua", "Marine"];
arr.sort();
```
之前:[“藍色”、“橙色”、“水色”、“海洋”]
之后:[“水色”、“藍色”、“海洋”、“橙色”]
?字母排序行為在 JavaScript 中不太直觀。僅當數組中的所有元素都被讀取為(類型)字符串時,內置的默認 sort() 函數才適用于 JavaScript 數組。
**(4) 字母排序 | 降序? [???]**
```js
const arr = ["Blue", "Orange", "Aqua", "Marine"];
arr.sort().reverse();
```
之前:[“藍色”、“橙色”、“水色”、“海洋”]
之后:[“橙色”、“海洋”、“藍色”、“水綠色”]
?與僅適用于字符串實體的 sort() 函數不同,JavaScript 中的函數 reverse() 適用于整個數組并交換元素的位置而不管(類型)。第一個元素成為最后一個元素,反之亦然。
**(5) 日期排序 | 上升 [▲]**
```js
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) 日期排序 | 降序 [▼]
類似于數字排序...
```js
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 -**
更多關于“html5培訓”的問題,歡迎咨詢千鋒教育在線名師。千鋒已有十余年的培訓經驗,課程大綱更科學更專業,有針對零基礎的就業班,有針對想提升技術的提升班,高品質課程助理你實現夢想。