zoukankan      html  css  js  c++  java
  • uni-app实现 通讯录按照字母排序

    import PY from '@/common/pinyin.js'

    可以从下面链接获取

    https://www.cnblogs.com/supershare/p/14318957.html

    //arr对应的名字数组
    pySegSort(arr) {
      let letters = "*ABCDEFGHJKLMNOPQRSTWXYZ".split('');
      let segs = {};
      let indexedList = []
      // 创建一个以26个为key的对象
      letters.forEach(item => {
        segs[item] = [];
      })
      arr.forEach(item => {
        // 取姓氏并返回姓氏的拼音首字母
        let a = PY.ConvertPinyin(item.cusName).substr(0, 1)
        // 在A-z之中写入对应字母的对象数组中,否则传入*对象数组里
        let regComfirm = /[A-Za-z]/.test(a)
        regComfirm ? segs[a.toLocaleUpperCase()].push(item) : segs['*'].push(item)

      })
      // 循环segs对象,转换为indexList组件需要的格式
      for (const [key, value] of Object.entries(segs)) {
        value.length && indexedList.push({
          letter: key,
          data: value
        })
      }
      indexedList.forEach(item => {
        if (item.data.length > 1) {
          // 这里是给相同拼音首字母进行排序
          item.data = item.data.sort((a, b) => {
            return a.localeCompare(b)
          })
        }
      })
      return indexedList;
    },

  • 相关阅读:
    纯CSS打造好看的按钮样式
    jQuery手机端触摸卡片切换效果
    CSS手动改变DIV高宽
    Windows 10 的音频和 MIDI API将统一
    美食网站响应式精美模板
    三道Javascript的练习题
    html5手机端遮罩弹出菜单代码
    CSS的::selection使用方法
    Html5绘制饼图统计图
    JQuery实现一个简单的鼠标跟随提示效果
  • 原文地址:https://www.cnblogs.com/supershare/p/14318950.html
Copyright © 2011-2022 走看看