在nodeJs中进行中文排序

在客户端中文排序可以使用localeCompare这个方法,然而在node中该方法却只能用于排数字和英文,对中文也无计可施,没关系,我们还是有方法可以进行中文排序的。

node社区中有很多拼音库,感谢大佬们的贡献!我们选择pinyinlite.js这个相对轻量的


先安装pinyinlite.js这个模块,它可以将中文转为拼音

$ yarn add pinyinlite

如下图:

image.png
const pinyin = require('pinyinlite')

pinyin('中国')
// console => [['zhong'], ['guo']]

['中国', '美国', '日本'].sort((item1, item2) => {
    let c1 = pinyin(item1).join('')
    let c2 = pinyin(item2).join('')
    return c1.localeCompare(c2)
})
// console => arr = ['美国', '日本', '中国']

该方法适用于中英文数字混合,对特殊符号不予处理,几乎可以应对任何场景。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容