|
如[6,7,9,1,-1].sort();執行后數組變為[-1,1,6,7,9]。
對于需要降序排列或非字符串排序,該方法就不能很好的執行了。
當然,sort有一個可選參數,它能幫我們解決這個問題,通過為sort傳入一個函數,sort根據函數返回值進行排序。
數組為該函數默認傳入數組中的兩個元素,如傳入a,b,如果函數返回值大于0,則排序方式為b,a,如果返回值小于0,則排序結果為a,b。
具體含義不好解釋,當初我也對這個sort其到底是怎么排序的不理解。
如果知道了其實現過程,就對他的排序原理明了了。
sort的實現其實很像是一個簡單的冒泡排序。
偶今日對其進行了模擬,看懂這個函數你一定就明白sort的原理了。
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
JavaScript技術:js模擬實現Array的sort方法,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。