Buat catatan terutama untuk menangani angka. Jika karakter sebelumnya dari angka -angka itu sama, angka -angka dibandingkan dengan nilai, bukan perbandingan antara karakter individu.
fungsi sort likeWin (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);} for (lista || listb.length); i <minlen; i ++) {// Angka di mana angka tersebut terletak var indexa = A.indexof (lista [i]); indeksb = b.indexof (listb [i]); // prefix sebelum nomor var prefixa = a.substring (0, indexa); vari strb = listb [i]; // nilai angka var numa = parseInt (stra); var numb = parseInt (strb); // Jika angka urutan angka tidak sama atau awalannya tidak sama, itu adalah kasus yang berbeda dari kongrik, bandingkan {indexa); indexal (indexb || prefixa! = prefixb) {retrice. (stra) === strb) {// Jika itu adalah angka terakhir, bandingkan akhiran angka jika (i == minlen - 1) {return a.substring (indexa) .localeCompare (b.substring (indexb);} // jika bukan nomor terakhir, loop ke nomor berikutnya dan menghapus bagian yang sama sebelum lainnya. b.substring (indexa + stra.length);}} // Jika string angka tidak lengkap, tetapi nilainya sama lain jika (numa == numb) {// mendaftar jumlah awalan 0, semakin banyak pengembalian strb.lastIndexof (numb + ') - stra.lastindexof (numa +'); - mati rasa;}}}}}Cara menggunakan, array.sort (sort like seperti);
Di atas adalah efek penyortiran dengan nama imitasi file Windows berdasarkan JS. Saya harap ini akan membantu semua orang. Jika Anda memiliki pertanyaan, silakan tinggalkan saya pesan dan editor akan membalas semua orang tepat waktu. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!