Rumah  >  Artikel  >  hujung hadapan web  >  Cara Isih Objek JavaScript mengikut Nama Harta: Pendekatan ES5 lwn. ES6

Cara Isih Objek JavaScript mengikut Nama Harta: Pendekatan ES5 lwn. ES6

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-29 20:51:29978semak imbas

How to Sort JavaScript Objects by Property Names: ES5 vs. ES6 Approaches

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!

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