Rumah > hujung hadapan web > tutorial js > Bagaimana Mengisih Rentetan dengan Betul dalam JavaScript menggunakan `localeCompare`?

Bagaimana Mengisih Rentetan dengan Betul dalam JavaScript menggunakan `localeCompare`?

Mary-Kate Olsen
Lepaskan: 2024-11-26 19:37:14
asal
218 orang telah melayarinya

How to Properly Sort Strings in JavaScript using `localeCompare`?

Cara Mengisih Rentetan dalam JavaScript Menggunakan localeCompare

Apabila cuba mengisih senarai objek berdasarkan atribut rentetan menggunakan pendekatan tradisional list.sort(function (a, b) { return a.attr - b.attr }), anda mungkin menghadapi keputusan yang tidak dijangka. Ini kerana pengendali penolakan (-) tidak secara semula jadi mengisih rentetan dalam JavaScript.

Untuk mengisih rentetan dengan berkesan dalam senario ini, gunakan kaedah String.prototype.localeCompare. Kaedah ini membandingkan dua rentetan dan mengembalikan nombor negatif jika rentetan pertama diisih sebelum rentetan kedua, nombor positif jika rentetan kedua diisih sebelum rentetan pertama, atau sifar jika kedua-dua rentetan adalah sama.

Ini bagaimana anda boleh menyesuaikan kod anda menggunakan localeCompare:

list.sort(function (a, b) {
  return ('' + a.attr).localeCompare(b.attr);
});
Salin selepas log masuk

Dengan menghantar a.attr secara eksplisit pada rentetan, kami mengelakkan kemungkinan pengecualian. localeCompare menawarkan sokongan sejak Internet Explorer 6 dan Firefox 1.

Atas ialah kandungan terperinci Bagaimana Mengisih Rentetan dengan Betul dalam JavaScript menggunakan `localeCompare`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan