javascript 实现中文按照拼音首字母排序


js提供了sort()方法来对数组内的数据进行排序,但是只是对英文有作用,这个时候需要自定义排序的规则

['张三','李四','王五'].sort((a, b) => a.localeCompare(b, 'zh-Hans-CN', {sensitivity: 'accent'}))

输出

['李四','王五','张三']

解释一下,sort()里面定义了一个函数来指定排序的规则,localeCompare()方法返回一个数字,指示引用字符串是在排序顺序之前还是之后,或者与排序顺序中的给定字符串相同,zh-Hans-CN是简体中文的排序规则,sensotivity 是灵敏度,包括 baseaccentcasevariant这几种灵敏度

参考链接:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/localeCompare


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM