2016-09-28 126 views
0

這是我的數據["2","1","10"]。當我嘗試對這些數字進行排序時,我的輸出是["1","10","2"],但我的預期輸出是["1","2","10]。我使用orderBy來排序這些數字。它僅根據0到9分類。如何使用javascript對字符串數字進行排序

如何使用js對這些數字進行排序?

這是我的代碼:

ng-options="option.id as option.roomno for option in frData 
      | unique:'roomno' | orderBy:'roomno' " 
+4

'[ 「2」, 「1」, 「10」]排序(功能(A,B){返回AB;});' – Rayon

+0

迭代並採用每個元素的parseInt並進行排序..最後將其轉換爲字符串 –

+0

比較時將字符串解析爲數字,但是您對如何排序它們並不十分清楚,如果我們假設您使用的是Angular,如果是這樣,請正確標記。 – adeneo

回答

0
function sortNumStr(m,n) { 
    return m - n; 
} 

var numArray = ["2", "1", "10"]; 
numArray.sort(sortNumStr); 
alert(numArray) 
+1

_Clarification:_'return m -n;'確定排序爲_ascending_,如果使用'return n -m;'它確定排序爲_descending_。 – Roy123

相關問題