Faites un enregistrement principalement pour gérer les chiffres. Si les caractères précédents des nombres sont les mêmes, les nombres sont comparés aux valeurs, plutôt que des comparaisons entre les caractères individuels.
Fonction SortLILIDWIN (V1, V2) {var a = v1.name; var b = v2.Name; var reg = / [0-9] + / g; var lista = a.match (reg); var listB = b.match (reg); if (! lista ||! listB) {return a.LocaleCompare (b);} pour (var i = 0, minlen = math.min (lisyling, pour (var i i = 0, minlen = math.min (lista. ListB.Length); lista [i]; var strb = listB [i]; // la valeur du nombre var numa = parseInt (str); var numb = paSeInt (strb); // si les numéros de séquence du nombre ne sont pas égaux ou que le préfixe n'est pas égal a.LocaleCompare (b);} else {// La chaîne congruente du nombre (str) === strb) {// Si c'est le dernier numéro, comparez le suffixe du nombre si (i == Minlen - 1) {return a.substring (indexa) .localecompare (B.SubString (indexB));} // If If If If If If If If If If the Number, Loop to the wroul Partie avant else {a = a.substring (indexa + stra.length); b = B.Substring (indexa + str.length);}} // si la chaîne du nombre n'est pas terminée, mais les valeurs sont égales else if (numa == Numb) {// Inscrivez le nombre de préfixes 0, le plus de retour STRB.LASTINDEXOF (NUMB + '') '');} else {// Si les nombres ne sont pas égaux, comparez directement la taille des nombres renvoie numa - numb;}}}}}Comment utiliser, array.sort (sortlikewin);
Ce qui précède est l'effet du tri par le nom de l'imitation des fichiers Windows basés sur JS. J'espère que ce sera utile à tout le monde. Si vous avez des questions, veuillez me laisser un message et l'éditeur répondra à tout le monde à temps. Merci beaucoup pour votre soutien au site Web Wulin.com!