最近做專案用sort()對陣列排序,發現排完後的順序不對,搜了很多帖子,才明白了。
var values = [0,1,5,10,15];
values.sort();
alert(values) // [0,1,10,15,5]
顯然不是你想要的 為啥5在最後面呢?sort函式在比較時 會呼叫每個陣列項的tostring()轉型方法,即會將每一項轉化為ascii進行比較。可以使用引數保證排序的穩定性,如下
var values = [0,1,5,10,15]
function compare(a,b)else if(acompare函式還可以更簡化
function compare(a,b)
stat函式的使用和遇到的坑
stat函式的使用 stat const char restrict path,struct stat restrict buf 說明 其中path變數不能只是當前目錄下的檔名,那樣會出現未找到檔案或者目錄的錯誤,應該是檔案的絕對路徑,並將轉化後的資訊放到buf中。目前網上很多c實現都是寫的讀到的檔...
joda time遇到的坑
system.out.println datetime.parse 2015092408 datetimeformat.forpattern yyyymmddhh getmillis system.out.println datetime.parse 2015092408 datetime form...
Spring Websocket 遇到的坑
1 跨域問題 經查閱官方文件springwebsocket 4.1.5版本前預設支援跨域訪問,之後的版本預設不支援跨域,需要設定 setallowedorigins override public void registerwebsockethandlers websockethandlerregi...