Maison > interface Web > js tutoriel > le corps du texte

Comment trier les objets JavaScript par noms de propriété : approches ES5 et ES6

Mary-Kate Olsen
Libérer: 2024-10-29 20:51:29
original
978 Les gens l'ont consulté

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

Organiser les objets JavaScript par noms de propriété

Trier les objets JavaScript par ordre alphabétique par nom de propriété est une exigence courante, mais cela pose un défi car l'objet l’ordre des clés n’est pas garanti. Cet article aborde ce problème et fournit une solution pour organiser les objets dans un ordre spécifique.

Solution ES5 obsolète :

Comme la spécification ES5 ne définit pas d'ordre pour les objets clés, la méthode suivante peut être utilisée, mais n'est pas considérée comme à l'épreuve du temps :

<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;
}
Copier après la connexion

Cette solution parcourt les clés de l'objet, les trie par ordre alphabétique, puis crée un nouvel objet avec les clés triées et leurs valeurs correspondantes.

Solution conforme ES6 :

Avec l'introduction d'ES6, les clés d'objet sont désormais garanties d'être dans l'ordre dans lequel elles ont été définies. Par conséquent, le tri peut être effectué de manière plus concise :

<code class="javascript">const sortedObject = Object.fromEntries(
  Object.entries(originalObject).sort((a, b) => a[0].localeCompare(b[0]))
);</code>
Copier après la connexion

Cette méthode convertit l'objet en un tableau de paires clé-valeur, trie le tableau en fonction des clés, puis reconvertit le tableau trié en un objet en utilisant Object.fromEntries().

Conclusion :

Bien que l'ordre des clés d'objet dans ES5 ne soit pas défini, les solutions fournies peuvent être utilisées pour trier les objets par noms de propriété . Dans ES6 et versions ultérieures, l'ordre des clés d'objet est garanti, ce qui rend le processus de tri plus simple.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!