js根据汉字拼音首字母排序分组

最近有一个需求,就是做一个类似通讯录的玩意。这里其实前端的话网上挺多轮子的,直接改改就好了,但是有一点就是在得到汉字之后如何根据拼音的首字母排序并且分组就是一个小问题,当然解决起来也是挺简单的啰。由于我实在小程序中的实现,所以就用的是js。

首先我们需要去github上找到一个开源的汉字库,其实说白了就是一个码表,自己也可以弄,但是没有必要重复造轮子的。

首先,我找的是这个库,star人挺多的 github传送门
也有那种带声标的,但是没必要,这个库就很OK了。由于小程序这边安卓是不能使用localCompare的,所以我们还是使用码表吧。(ps:推荐使用码表,因为localCompare存在兼容性问题,与其碰到问题,不如直接就使用没问题的解决方案)

然后就很简单了,将开源库下面的那个index.js复制到你的util工具包的一个类当中,在需要的页面引入
import Pinyin from '../../utils/pinyin'
引入之后的核心工具方法如下(需要传入需要排序的中文字符数组,变量命名有点随意,不喜勿喷)

function pinyinSort(name) {
   
  var pinyinArray = new Array()
  for (var bukn = 0; bukn < name.length; bukn++) {
   
    var o = new Object()
    var ken = Pinyin.getSpell(name[bukn]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值