js中如何对含有特殊字符的数组进行排序?

描述

有一个数组,数组中可以能含有-*等特殊字符,其他是字符串和数字,如何对这个数组进行排序?

var arr=[5,1,'aa',44,'-','cc','-']

如何对上述数组进行排序?

排序结果:

[1,5,44,'aa','cc','-','-']


补充

这个问题肯定不是让用sort排序,那就没意义了,这个是想让除了现成的方法之外,自己写一个排序算法来解决。

阅读 4.5k
3 个回答

你是需要排成什么样呢

Array.sort(),排序规则可自己写
eg:

var items = ['réservé', 'premier', 'cliché', 'communiqué', 'café', 'adieu'];
items.sort(function (a, b) {
  return a.localeCompare(b);
});

// items is ['adieu', 'café', 'cliché', 'communiqué', 'premier', 'réservé']

把排序规则理一理,然后写出对应函数就 ok 了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏