Menyusun Objek JavaScript mengikut Nama Harta
Mengisih objek JavaScript mengikut abjad mengikut nama harta ialah keperluan biasa, tetapi ia menimbulkan cabaran sebagai objek pesanan kunci tidak dijamin. Artikel ini menangani isu ini dan menyediakan penyelesaian untuk menyusun objek dalam susunan tertentu.
Penyelesaian ES5 Lapuk:
Memandangkan spesifikasi ES5 tidak mentakrifkan pesanan untuk objek kekunci, kaedah berikut boleh digunakan, tetapi tidak dianggap sebagai kalis masa hadapan:
<code class="javascript">function sortObject(o) { var sorted = {}, key, a = []; for (key in o) { if (o.hasOwnProperty(key)) { a.push(key); } } a.sort(); for (key = 0; key < a.length; key++) { sorted[a[key]] = o[a[key]]; } return sorted; }
Penyelesaian ini berulang ke atas kekunci objek, mengisihnya dalam susunan abjad, dan kemudian mencipta objek baharu dengan kekunci yang diisih dan nilainya yang sepadan.
Penyelesaian Mematuhi ES6:
Dengan pengenalan ES6, kunci objek kini dijamin berada dalam susunan yang ditentukan. Oleh itu, pengisihan boleh dicapai dengan lebih ringkas:
<code class="javascript">const sortedObject = Object.fromEntries( Object.entries(originalObject).sort((a, b) => a[0].localeCompare(b[0])) );</code>
Kaedah ini menukarkan objek kepada tatasusunan pasangan nilai kunci, mengisih tatasusunan berdasarkan kekunci, dan kemudian menukar tatasusunan yang diisih kembali menjadi objek menggunakan Object.fromEntries().
Kesimpulan:
Walaupun susunan kekunci objek dalam ES5 tidak ditentukan, penyelesaian yang disediakan boleh digunakan untuk mengisih objek mengikut nama sifat . Dalam ES6 dan lebih baru, susunan kekunci objek dijamin, menjadikan proses pengisihan lebih mudah.
Atas ialah kandungan terperinci Cara Isih Objek JavaScript mengikut Nama Harta: Pendekatan ES5 lwn. ES6. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!