使用Array.sort 排序中文,js有效,nodejs中无效

clipboard.png
clipboard.png

同样的代码,为什么在浏览器环境,和node环境中排序结果不一致,想要的结果是在node环境中排序的结果和浏览器结果一致(中文按照首字母拼音A-Z排序)

阅读 6.3k
3 个回答

浏览器能正确排序是因为 chrome 对 localeCompare 方法的locales做了支持使其能按指定地区对字符串进行排序。然而 node 并没有做支持~

我记得localCompare好像也不是总是准确,如果可以的话,数据结构改下,专门增加一个用来排序的字段,比如字母之类的。不能改数据的话,可以找个node的拼音库试下。

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