如何在像C#这样的Javascript中对数组进行排序?

时间:2014-09-13 09:46:11

标签: c# javascript arrays sorting

我想在JavaScript中将数组排序为asc。使用sort方法后,结果如下所示。

[ '123, '12', '1A1', '1A', '1a', 'A1', 'A2', 'AB', 'A', 'Ab', 'a1', 'a2', 'aB', 'ab' ]

当我使用C#排序Array.Sort()时,结果如下所示。

{ "12", "123", "1a", "1A", "1A1", "A", "a1", "A1", "a2", "A2", "ab", "aB", "Ab", "AB" }

实际上C#排序方式是我想要的,那么如何在JavaScript中实现呢?有没有人以前完成过这个任务?比较器功能真的很受欢迎。

1 个答案:

答案 0 :(得分:1)

Array.prototype.sort默认使用字符串比较。您似乎想比较不区分大小写 - 您可以传入使用toLowerCase的比较器函数(但要注意与.toLocaleLowerCase的区别!):

a.sort(function(a, b) {
  a = a.toLowerCase(); b = b.toLowerCase();
  return a > b ? 1 : a < b ? -1 : 0;
});