Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Mengisih Tatasusunan Integer dengan Betul dalam JavaScript untuk Mencari Nilai Minimum dan Maksimum?

Bagaimanakah Saya Boleh Mengisih Tatasusunan Integer dengan Betul dalam JavaScript untuk Mencari Nilai Minimum dan Maksimum?

Susan Sarandon
Lepaskan: 2024-12-24 11:41:14
asal
422 orang telah melayarinya

How Can I Correctly Sort an Integer Array in JavaScript to Find the Minimum and Maximum Values?

Mendapatkan Paling Banyak dan Paling Kecil daripada Tatasusunan Integer: Penggantian Rentetan Yang Tidak Dijangka

Tugas mencari nilai tertinggi dan terendah dalam tatasusunan yang hanya terdiri daripada integer nampaknya sangat mudah. Walau bagaimanapun, seperti yang mungkin ditemui, kaedah sort() asli membentangkan halangan yang tidak dijangka. Memandangkan ia mengutamakan susunan abjad secara lalai, pengisihan berangka terbukti lebih mencabar daripada yang dijangkakan. Bagaimanakah kita boleh mengatasi halangan ini dan mengarahkan fungsi sort() untuk memfokuskan pada nilai integer dalam elemen tatasusunan?

Pertimbangkan contoh berikut:

var numArray = [140000, 104, 99];
numArray = numArray.sort();
console.log(numArray);
Salin selepas log masuk

Jangkaan intuitif akan membawa kita untuk menjangkakan output sebanyak 99, 104, 140000. Walau bagaimanapun, hasilnya berbeza secara drastik: 104, 140000, 99. Tingkah laku pelik ini berpunca daripada kecenderungan semula jadi kaedah sort() untuk menganggap nilai sebagai rentetan, bukannya integer.

Untuk membetulkan isu ini, kami boleh memperkenalkan fungsi pengisihan tersuai untuk mengendalikan nilai angka secara eksplisit. Begini cara kita boleh mencapainya:

var numArray = [140000, 104, 99];
numArray.sort(function(a, b) {
  return a - b;
});

console.log(numArray);
Salin selepas log masuk

Fungsi sortNumber(a, b) cekap mengendalikan pengisihan berangka yang kita cari. Dengan menolak a daripada b, nilai positif menolak a ke kanan, memastikan nilai yang lebih tinggi muncul kemudian dalam tatasusunan yang diisih. Sebaliknya, nilai negatif menggesa pertukaran, meletakkan nilai yang lebih kecil ke kiri. Fungsi pengisihan tersuai ini memberi kuasa kepada kami untuk mengisih tatasusunan integer dengan tepat, memberikan nilai tertinggi dan terendah seperti yang dimaksudkan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengisih Tatasusunan Integer dengan Betul dalam JavaScript untuk Mencari Nilai Minimum dan Maksimum?. 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