2016-09-28 205 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

相关问题