首页  >  问答  >  正文

javascript - 关于这组数据如何实现 按字母列表分类展示 不改动数据结构

var data = [{
    "name": "涡阳",
    "pinyin": "WoYang"
}, {
    "name": "邳州",
    "pinyin": "PiZhou"
}, {
    "name": "玉溪",
    "pinyin": "YuXi"
}, {
    "name": "无锡",
    "pinyin": "WuXi"
}, {
    "name": "萍乡",
    "pinyin": "PingXiang"
}];

按照字母 A B C ...列表归类

P->
     {
    "name": "萍乡",
    "pinyin": "PingXiang"
    },
     {
    "name": "邳州",
    "pinyin": "PiZhou"
    }
 

类似链接描述

怎么操作这组数据。。

我的代码,比较渣 求更优雅的写法
function jsfu(data) {
   var obj={}
    data.map(function(item, index) {
        let codeIndex = item.pinyin.charAt(0)
        if (!obj[codeIndex]) {
            obj[codeIndex] = {
                item: []
            }
        }
      obj[codeIndex].item.push(item)
    })
    return obj
}

怎么排序,发现在页面是无序的,是js对象无序特性!

给我你的怀抱给我你的怀抱2728 天前542

全部回复(2)我来回复

  • 黄舟

    黄舟2017-05-24 11:38:52

    雷雷 雷雷

    回复
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-24 11:38:52

    雷雷

    回复
    0
  • 取消回复