Heim > Web-Frontend > js-Tutorial > So implementieren Sie die chinesische Sortierung nach A-Z in js

So implementieren Sie die chinesische Sortierung nach A-Z in js

php中世界最好的语言
Freigeben: 2018-03-28 14:49:02
Original
4257 Leute haben es durchsucht

Dieses Mal zeige ich Ihnen, wie Sie Chinesisch nach A-Z in js sortieren sehen.

Um Chinesisch nach der A-Z-Methode umzusetzen, können Sie in den Methoden von vue schreiben:

Der JSON, der sein wird Von PHP erhaltenes Objekt wird in ein
methods:{
        pySort:function(arr,empty){
          var $this = this;
          if(!String.prototype.localeCompare)
            return null;
          var letters = "ABCDEFGHJKLMNOPQRSTWXYZ".split('');
          var zh = "阿八嚓哒妸发旮哈讥咔垃痳拏噢妑七呥扨它穵夕丫帀".split('');
          var arrList = [];
          for(var m =0;m<arr.length;m++){
            arrList.push(arr[m].name);
          }
          var result = [];
          var curr;
          for(var i=0;i<letters.length;i++){
            curr = {letter: letters[i], data:[]};
            if(i!=26){
              for(var j =0;j<arrList.length;j++){
                var initial = arrList[j].charAt(0);//截取第一个字符
                if(arrList[j].charAt(0)==letters[i]||arrList[j].charAt(0)==letters[i].toLowerCase()){  //首字符是英文的
                  curr.data.push(arrList[j]);
                }else if(zh[i]!=&#39;*&#39;&&$this.isChinese(initial)){   //判断是否是无汉字,是否是中文
                  if(initial.localeCompare(zh[i]) >= 0 &&(!zh[i+1]||initial.localeCompare(zh[i+1]) <0)) {  //判断中文字符在哪一个类别
                    curr.data.push(arrList[j]);
                  }
                }
              }
            }else{
              for(var k =0;k<arrList.length;k++){
                var ini = arrList[k].charAt(0);      //截取第一个字符
                if(!$this.isChar(ini)&&!$this.isChinese(ini)){
                  curr.data.push(arrList[k]);
                }
              }
            }
            if(empty || curr.data.length) {
              result.push(curr);
              //curr.data.sort(function(a,b){
              //  return b.localeCompare(a);    //排序,英文排序,汉字排在英文后面
              //});
            }
          }
          return result;
        },
        isChinese:function(temp){
          var re=/[^\u4E00-\u9FA5]/;
          if (re.test(temp)){return false;}
          return true ;
        },
        isChar:function(char){
          var reg = /[A-Za-z]/;
          if (!reg.test(char)){return false ;}
          return true ;
        }
       }
Nach dem Login kopieren
Array

konvertiert und direkt in vue aufgerufen ->this.pySort(arr); js kann die pySort(arr)-Methode direkt aufrufen, um eine Sortierung im Format zu erreichen A-Z

Die Formatausgabe auf der Konsole ist wie folgt:

Der Schlüsselwert A-Z ist gespeichert in Brief

Daten: Speicher Das sortierte Array

muss auf der Seite in Vue platziert werden. Verwenden Sie v-

for-Schleife

für v-for="(key , value) in arr"Sie müssen den Wert des Datenarrays abrufen und weiterhin v-for="tmp in (key.data)" verwenden, um die Elemente zu durchlaufen, die Sie eingeben und platzieren möchten

Es ist relativ einfach zu schreiben, diese Methode ist auch in js verfügbar.

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen erhalten Sie zu anderen verwandten Artikeln auf der chinesischen PHP-Website!

Empfohlene Lektüre:

So veröffentlichen Sie ein Vue-Projekt über Baidus BAE


@HostBinding() und @HostListener in AngularJS ()Was ist der Unterschied

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die chinesische Sortierung nach A-Z in js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage