Jika anda telah bekerja dengan JavaScript untuk seketika, anda mesti tahu jenis fungsi pengisihan tatasusunan ialah kaedah dalam prototaip tatasusunan, iaitu array.prototype.sort(), sort(compareFunction), di mana compareFunction ialah sebuah. fungsi perbandingan. Mari kita lihat penerangan daripada Mozilla MDN:
Jika compareFunction tidak dibekalkan, elemen diisih dengan menukarnya kepada rentetan dan membandingkan rentetan dalam susunan leksikografik (“kamus” atau “buku telefon,” bukan berangka) Contohnya, “80″ didahulukan sebelum “9″ dalam leksikografi tertib, tetapi dalam isihan angka 9 datang sebelum 80.
Lihat beberapa contoh mudah di bawah:
// Output ["a", "b", "c"]
console.log(["c", "b", "a"].sort());
// Output [1, 2, "a", "b"]
console.log(["b", 2, "a", 1].sort());
Seperti yang anda lihat daripada contoh di atas, lalainya ialah mengisih mengikut susunan abjad dalam kamus.
Nasib baik, isihan menerima fungsi perbandingan tersuai, seperti dalam contoh berikut:
Selepas menyusun, kami mempunyai soalan lain, bagaimana untuk mengawal susunan menaik dan menurun?
Peraturan pengisihan fungsi perbandingan adalah seperti berikut:
1.Jika ia mengembalikan nombor negatif, a akan diisih ke indeks yang lebih rendah dalam tatasusunan.
2.Jika ia mengembalikan nombor positif, a akan diisih ke indeks yang lebih tinggi.
3.Dan jika ia kembali 0 tiada pengisihan diperlukan.
Mari kita lihat petikan daripada Mozilla MDN:
Tingkah laku kaedah isihan berubah antara JavaScript 1.1 dan JavaScript 1.2.Untuk menerangkan penerangan ini, mari lihat contoh:
Dalam JavaScript 1.1, pada sesetengah platform, kaedah isihan tidak berfungsi pada semua platform untuk JavaScript 1.2.
Dalam JavaScript 1.2, kaedah ini tidak lagi menukar elemen yang tidak ditentukan kepada null sebaliknya ia mengisihnya ke bahagian atas tatasusunan Sila klik di sini untuk mendapatkan butiran.
Saya harap artikel ini akan membantu anda untuk mempelajari dan memahami kaedah sort() Saya harap anda akan mengkritik dan membetulkan sebarang ketidaksesuaian dalam artikel tersebut.
Pautan rujukan: https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/sort