js实现城市名称拼音索引

原创 2016年08月30日 15:07:33

来到新的项目组快两个月的时间了,今天开需求分析电话会议时;业务提出来根据拼音进行城市姓名索引的需求。所以自己编写了一个方法进行从后台得到的json数据进行一个按照城市首写字母的城市索引!代码如下:

$rootScope.getLastCityList = function(list){
      var scope = this;
      if(list){
         var TheTempCityList = new Array();
         for(var i=0;i<list.length;i++){
            for(var j=0;j<list[i].cityModelList.length;j++){
               TheTempCityList.push(list[i].cityModelList[j]);
            }
         }
         //过滤出所有的城市列表
         var AObjectList=[];
         var BObjectList=[];
         var CObjectList=[];
         var DObjectList=[];
         var EObjectList=[];
         var FObjectList=[];
         var GObjectList=[];
         var HObjectList=[];
         var IObjectList=[];
         var JObjectList=[];
         var KObjectList=[];
         var LObjectList=[];
         var MObjectList=[];
         var NObjectList=[];
         var OObjectList=[];
         var PObjectList=[];
         var QObjectList=[];
         var RObjectList=[];
         var SObjectList=[];
         var TObjectList=[];
         var UObjectList=[];
         var VObjectList=[];
         var WObjectList=[];
         var XObjectList=[];
         var YObjectList=[];
         var ZObjectList=[];
         var AObject = {
            "cityFlagName":"A",
            "cityFlagNameList":AObjectList
         };
         var BObject = {
            "cityFlagName":"B",
            "cityFlagNameList":BObjectList
         };
         var CObject = {
            "cityFlagName":"C",
            "cityFlagNameList":CObjectList
         };
         var DObject = {
            "cityFlagName":"D",
            "cityFlagNameList":DObjectList
         };
         var EObject = {
            "cityFlagName":"E",
            "cityFlagNameList":EObjectList
         };
         var FObject = {
            "cityFlagName":"F",
            "cityFlagNameList":FObjectList
         };
         var GObject = {
            "cityFlagName":"G",
            "cityFlagNameList":GObjectList
         };
         var HObject = {
            "cityFlagName":"H",
            "cityFlagNameList":HObjectList
         };
         var IObject = {
            "cityFlagName":"I",
            "cityFlagNameList":IObjectList
         };
         var JObject = {
            "cityFlagName":"J",
            "cityFlagNameList":JObjectList
         };
         var KObject = {
            "cityFlagName":"K",
            "cityFlagNameList":KObjectList
         };
         var LObject = {
            "cityFlagName":"L",
            "cityFlagNameList":LObjectList
         };
         var MObject = {
            "cityFlagName":"M",
            "cityFlagNameList":MObjectList
         };
         var NObject = {
            "cityFlagName":"N",
            "cityFlagNameList":NObjectList
         };
         var OObject = {
            "cityFlagName":"O",
            "cityFlagNameList":OObjectList
         };
         var PObject = {
            "cityFlagName":"P",
            "cityFlagNameList":PObjectList
         };
         var QObject = {
            "cityFlagName":"Q",
            "cityFlagNameList":QObjectList
         };
         var RObject = {
            "cityFlagName":"R",
            "cityFlagNameList":RObjectList
         };
         var SObject = {
            "cityFlagName":"S",
            "cityFlagNameList":SObjectList
         };
         var TObject = {
            "cityFlagName":"T",
            "cityFlagNameList":TObjectList
         };
         var UObject = {
            "cityFlagName":"U",
            "cityFlagNameList":UObjectList
         };
         var VObject = {
            "cityFlagName":"V",
            "cityFlagNameList":VObjectList
         };
         var WObject = {
            "cityFlagName":"W",
            "cityFlagNameList":WObjectList
         };
         var XObject = {
            "cityFlagName":"X",
            "cityFlagNameList":XObjectList
         };
         var YObject = {
            "cityFlagName":"Y",
            "cityFlagNameList":YObjectList
         };
         var ZObject = {
            "cityFlagName":"Z",
            "cityFlagNameList":ZObjectList
         };
         //将字母不同的城市,分别装进不同的对象
         for(var k=0;k<TheTempCityList.length;k++){
            switch(TheTempCityList[k].cityFlag){
               case 'a':
               case 'A':
                  AObjectList.push(TheTempCityList[k]);
                  break;
               case 'b':
               case 'B':
                  BObjectList.push(TheTempCityList[k]);
                  break;
               case 'c':
               case 'C':
                  CObjectList.push(TheTempCityList[k]);
                  break;
               case 'd':
               case 'D':
                  DObjectList.push(TheTempCityList[k]);
                  break;
               case 'e':
               case 'E':
                  EObjectList.push(TheTempCityList[k]);
                  break;
               case 'f':
               case 'F':
                  FObjectList.push(TheTempCityList[k]);
                  break;
               case 'g':
               case 'G':
                  GObjectList.push(TheTempCityList[k]);
                  break;
               case 'h':
               case 'H':
                  HObjectList.push(TheTempCityList[k]);
                  break;
               case 'i':
               case 'I':
                  IObjectList.push(TheTempCityList[k]);
                  break;
               case 'j':
               case 'J':
                  JObjectList.push(TheTempCityList[k]);
                  break;
               case 'k':
               case 'K':
                  KObjectList.push(TheTempCityList[k]);
                  break;
               case 'l':
               case 'L':
                  LObjectList.push(TheTempCityList[k]);
                  break;
               case 'm':
               case 'M':
                  MObjectList.push(TheTempCityList[k]);
                  break;
               case 'n':
               case 'N':
                  NObjectList.push(TheTempCityList[k]);
                  break;
               case 'o':
               case 'O':
                  OObjectList.push(TheTempCityList[k]);
                  break;
               case 'p':
               case 'P':
                  PObjectList.push(TheTempCityList[k]);
                  break;
               case 'q':
               case 'Q':
                  QObjectList.push(TheTempCityList[k]);
                  break;
               case 'r':
               case 'R':
                  RObjectList.push(TheTempCityList[k]);
                  break;
               case 's':
               case 'S':
                  SObjectList.push(TheTempCityList[k]);
                  break;
               case 't':
               case 'T':
                  TObjectList.push(TheTempCityList[k]);
                  break;
               case 'u':
               case 'U':
                  UObjectList.push(TheTempCityList[k]);
                  break;
               case 'v':
               case 'V':
                  VObjectList.push(TheTempCityList[k]);
                  break;
               case 'w':
               case 'W':
                  WObjectList.push(TheTempCityList[k]);
                  break;
               case 'x':
               case 'X':
                  XObjectList.push(TheTempCityList[k]);
                  break;
               case 'y':
               case 'Y':
                  YObjectList.push(TheTempCityList[k]);
                  break;
               case 'z':
               case 'Z':
                  ZObjectList.push(TheTempCityList[k]);
                  break;
            }
         }
         //将最终的城市对象,装进想要的城市列表
         var TheLastCityList = [AObject,BObject,CObject,DObject,EObject,FObject,GObject,
            HObject,IObject,JObject,KObject,LObject,MObject,NObject,
            OObject,PObject,QObject,RObject,SObject,TObject,
            UObject,VObject,WObject,XObject,YObject,ZObject];
         var FilterLastCityList = new Array();
         for(var i=0;i<TheLastCityList.length;i++){
            if(TheLastCityList[i].cityFlagNameList.length>0){
               FilterLastCityList.push(TheLastCityList[i]);
            }
         }
         scope.TheLastCityList = FilterLastCityList;
      }
   };
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

省市区js(可以得到行政代码和对应的名称)

  • 2015年08月21日 09:14
  • 24KB
  • 下载

js 类似微信索引列表移动

点击有索引 div移动到指定位置
  • u011301203
  • u011301203
  • 2016年12月05日 21:36
  • 710

js实现点击<li>标签弹出其索引值

据说这是一道笔试题,一下是代码,没什么要文字叙述的:
  • u012181244
  • u012181244
  • 2014年10月31日 17:00
  • 5927

mui的索引列表插件-增加热门城市

mui的索引列表插件的使用:动态数据绑定以及顶部搜索 并增加热门城市       页面中需要引入的文件。搜索框的样式移动到了header部分了。搜索框搜索完内容之后再点击清除按钮,然后点击字母索引会...
  • lorena0928
  • lorena0928
  • 2017年03月09日 14:56
  • 3256

js实现城市名称拼音索引

js实现城市名称拼音索引
  • donggx
  • donggx
  • 2016年08月30日 15:07
  • 1918

城市列表-根据拼音首字母排序

今天我们就简单的实现一下城市的排序 读取我们城市的信息并通过listview展示 首先看一下我们的布局文件...
  • Mannver
  • Mannver
  • 2016年05月04日 15:47
  • 7147

[Android精品源码] Android 仿美团网,探索ListView的A-Z字母排序功能实现选择城市

[Android精品源码] Android 仿美团网,探索ListView的A-Z字母排序功能实现选择城市
  • sinat_28238111
  • sinat_28238111
  • 2016年07月09日 17:05
  • 1390

拼音索引的城市plist,可以直接用

  • 2014年08月25日 14:05
  • 12KB
  • 下载

鼠标点击页面中的任意标签,alert该标签的名称和 js实现点击<li>标签弹出其索引值

方法一 : 在这里我们可以利用冒泡解决该问题 document.onclick = function(e){ var e=(e||event); var o=e["tar...
  • ZYY88886666
  • ZYY88886666
  • 2017年05月20日 20:17
  • 717

微信小程序 实现城市名称拼音搜索框 汉字/拼音(城市区县定位模块)

要实现的效果展示如下 总体思路: 首先,数据中,城市对象里,包含其全拼、简拼的属性; 然后,逻辑层,找出 能与 输入框输入的字符串 相匹配的 对象; 最后,展示层,把所有匹配的城市名都渲染出来。 接...
  • Beijiyang999
  • Beijiyang999
  • 2017年06月12日 19:57
  • 994
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:js实现城市名称拼音索引
举报原因:
原因补充:

(最多只允许输入30个字)