Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Mengisih Tatasusunan JavaScript Berdasarkan Susunan Tatasusunan Lain?

Bagaimana untuk Mengisih Tatasusunan JavaScript Berdasarkan Susunan Tatasusunan Lain?

Susan Sarandon
Susan Sarandonasal
2024-12-14 07:26:09206semak imbas

How to Sort a JavaScript Array Based on Another Array's Order?

Mengisih Tatasusunan JavaScript Berdasarkan Tatasusunan Lain

Mengatur tatasusunan dalam susunan tertentu boleh menjadi tugas yang mencabar, terutamanya apabila anda tidak melakukannya mempunyai ID untuk bergantung. Pertimbangkan tatasusunan berikut:

itemsArray = [
  ['Anne', 'a'],
  ['Bob', 'b'],
  ['Henry', 'b'],
  ['Andrew', 'd'],
  ['Jason', 'c'],
  ['Thomas', 'b'],
];

sortingArr = ['b', 'c', 'b', 'b', 'a', 'd'];

Matlamatnya adalah untuk menyusun semula itemArray agar sepadan dengan susunan yang dinyatakan dalam sortingArr. Menggunakan penyelesaian satu baris, anda boleh mencapai ini dengan:

itemsArray.sort(function(a, b) {
  return sortingArr.indexOf(a[1]) - sortingArr.indexOf(b[1]);
});

Atau, untuk lebih ringkas:

itemsArray.sort((a, b) => sortingArr.indexOf(a[1]) - sortingArr.indexOf(b[1]));

Kod ini menggunakan fungsi pengisihan tatasusunan untuk menyusun semula itemArray berdasarkan elemen pengisihanArr. Idea teras adalah untuk mengisih tatasusunan berdasarkan elemen kedua setiap tatasusunan dalam (cth., 'a', 'b', 'c', 'd'). Dengan berbuat demikian, item dalam itemsArray akan sejajar dengan keutamaan yang ditakrifkan dalam sortingArr.

Atas ialah kandungan terperinci Bagaimana untuk Mengisih Tatasusunan JavaScript Berdasarkan Susunan Tatasusunan Lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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 sebelumnya:Era moden Javascript:Artikel seterusnya:Era moden Javascript: