如何在JavaScript中对此数组进行排序?

时间:2018-04-13 13:47:56

标签: javascript

数组:

["6", "3", "1A", "4", "10", "1"]:

预期产出:

["1", "1A", "3", "4",, "6", "10"];

将数组放到parseInt会破坏代码。 我使用sort(function(a,b){return a-b;})进行排序。

然而,按原样使用它会将1A放在排序列表的末尾。

1 个答案:

答案 0 :(得分:5)

设置为数字的

localeCompare应该可以解决问题。

var list = ["6", "3", "1A", "4", "10", "1"]

console.log(list)

var sorted = list.sort(function(a, b) {
  return a.localeCompare(b, undefined, {
    numeric: true
  })
})

console.log(sorted)