这是我的数据["2","1","10"]
。当我尝试对这些数字进行排序时,我的输出为["1","10","2"]
,但我的预期输出为["1","2","10]
。我正在使用orderBy对这些数字进行排序。它的排序仅取决于0到9。
如何使用js对这些数字进行排序?
这是我的代码:
ng-options="option.id as option.roomno for option in frData
| unique:'roomno' | orderBy:'roomno' "
答案 0 :(得分:0)
function sortNumStr(m,n) {
return m - n;
}
var numArray = ["2", "1", "10"];
numArray.sort(sortNumStr);
alert(numArray)
答案 1 :(得分:0)
您可以像这样使用字符串的原生原型 localeCompare
函数:
["2","1","10"].sort((a,b) => a.localeCompare(b, undefined, { numeric: true }))
它也适用于其他字符中的数字。