JavaScript自定義陣列排序

2021-06-20 21:55:06 字數 1170 閱讀 5601

array中有自帶的排序功能,這個使用起來比較方便,我們有一點必須清楚,就是排序的依據,如果sort不傳入引數的話,那就是按照字元編碼(unicode編碼)的順序排序。

var a=["3","2","1"];

console.log(a[0].charcodeat(0)); // 51

console.log(a[1].charcodeat(0)); // 50

console.log(a[2].charcodeat(0)); // 49

console.log(a.sort()); // ["1", "2", "3"]

var a=["3","你","他"];

console.log(a[0].charcodeat(0)); // 51

console.log(a[1].charcodeat(0)); // 20320

console.log(a[2].charcodeat(0)); // 20182

console.log(a.sort()); // ["3", "他", "你"]

var a=["3","11","222"];

console.log(a.sort()); // ["11", "222", "3"]

// 多個字元的時候按照第乙個字元的編碼

不過我覺得sort最好用的地方在於可以自定義排序,這個在實際運用中也比較常見,比如要對物件陣列排序。例如線面的乙個物件陣列,要根據其中的某乙個字段進行排序,當然自己也可以寫個函式來完成,不過我想沒有sort來得方便。

var list = [,,

];// 根據max欄位對list物件進行排序,從小到大的順序

// x,y就是要比較的陣列的單個元素,這裡就是list中的乙個元素

// 排序方法主要是要提供乙個比較大小的規則,換句話說也就是要說明誰大誰小

// 返回值為true or false

JavaScript自定義事件

最近遇到乙個基於jquery專案,專案中的功能節點頁面都是通過iframe實現,但是各個iframe之間有時需要相互通訊,互相相應一些事件,為了更愉快的編碼所以想到了自定義事件,還別說用起來竟然有點像vue的元件通訊 top.events if this.handles name else this...

Javascript自定義事件

事件是與dom互動的最常見的方式,但它也可以用於非dom 中 通過實現自定義事件.實現自定義事件的原理是建立乙個管理事件的物件.如下 是事件的定義 function eventtarget 儲存事件處理程式,由n個鍵值對組成,鍵表示事件名,值是乙個由事件處理程式組成的陣列 eventtarget.p...

JavaScript自定義事件

最近遇到乙個基於jquery專案,專案中的功能節點頁面都是通過iframe實現,但是各個iframe之間有時需要相互通訊,互相相應一些事件,為了更愉快的編碼所以想到了自定義事件,還別說用起來竟然有點像vue的元件通訊 top.events if this.handles name else this...