Rumah > Artikel > hujung hadapan web > Bagaimana untuk Mengisih Tatasusunan Dua Dimensi mengikut Nilai Lajur dalam JavaScript?
Mengisih Tatasusunan Dua Dimensi mengikut Nilai Lajur dalam JavaScript
Untuk mengisih tatasusunan 2D mengikut nilai lajurnya dalam JavaScript, anda boleh menggunakan kaedah Array.sort() dengan fungsi perbandingan tersuai. Fungsi ini membandingkan elemen dalam lajur yang ditentukan dan menentukan susunan isihan.
Pertimbangkan contoh berikut:
var a = [[12, 'AAA'], [58, 'BBB'], [28, 'CCC'],[18, 'DDD']];
Untuk mengisih tatasusunan ini mengikut lajur pertama, anda boleh menggunakan kod berikut :
a.sort(sortFunction); function sortFunction(a, b) { if (a[0] === b[0]) { return 0; } else { return (a[0] < b[0]) ? -1 : 1; } }
IsihanFunction membandingkan elemen pertama daripada dua baris yang dibandingkan (a[0] dan b[0]) dan mengembalikan -1 jika unsur pertama a adalah kurang daripada unsur pertama b, 1 jika ia lebih besar daripada, dan 0 jika ia sama. Ini mentakrifkan susunan isihan dan kaedah Array.sort() akan menyusun tatasusunan dengan sewajarnya.
Untuk mengisih mengikut lajur kedua, anda boleh mengubah suai fungsi isihan:
a.sort(compareSecondColumn); function compareSecondColumn(a, b) { if (a[1] === b[1]) { return 0; } else { return (a[1] < b[1]) ? -1 : 1; } }
Ini fungsi membandingkan elemen kedua baris yang dibandingkan. Menggunakan kaedah ini, anda boleh mengisih tatasusunan 2D dengan mudah mengikut mana-mana nilai lajur dalam JavaScript.
Atas ialah kandungan terperinci Bagaimana untuk Mengisih Tatasusunan Dua Dimensi mengikut Nilai Lajur dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!