84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
请教各位大神,js里面如果是英文按照首字母排序,自然不用多说了。
不过如果要按照中文拼音首字母排序,应该这么做呢?大致应该如何实现?
例如: var a=['张三','李四','王五'] 排序后: var a=['李四','王五','张三']
如果更加变态一点,要按照首字的笔画数排序,有没有办法实现呢?
学习是最好的投资!
可以参考这个项目 https://github.com/hotoo/pinyin
英文排序具有天生的优势:字符序(字母在字符集里的顺序)跟字母序是一致的
字符序
字母序
而中文的拼音、笔画都跟字符序没有固定的关系,想要实现这样的功能,只能自行通过映射拼音、笔画来实现
可以使用string的方法 localeComparex.localeCompare(y)
['张三','李四','王五'].sort((a, b) => a.localeCompare(b))
https://developer.mozilla.org...
可以参考这个项目 https://github.com/hotoo/pinyin
英文排序具有天生的优势:
字符序
(字母在字符集里的顺序)跟字母序
是一致的而中文的拼音、笔画都跟字符序没有固定的关系,想要实现这样的功能,只能自行通过映射拼音、笔画来实现
可以使用string的方法 localeCompare
x.localeCompare(y)
https://developer.mozilla.org...