Heim >Web-Frontend >js-Tutorial >Wie sortiere ich ein JavaScript-Objekt alphabetisch nach Eigenschaftsnamen?

Wie sortiere ich ein JavaScript-Objekt alphabetisch nach Eigenschaftsnamen?

DDD
DDDOriginal
2024-11-01 18:14:30571Durchsuche

How to Sort a JavaScript Object Alphabetically by Property Name?

Sortieren eines JavaScript-Objekts nach Eigenschaftsnamen

F: Wie kann ich ein JavaScript-Objekt wie dieses alphabetisch nach Eigenschaftsnamen sortieren?

{
    method: 'artist.getInfo',
    artist: 'Green Day',
    format: 'json',
    api_key: 'fa3af76b9396d0091c9c41ebe3c63716'
}

Ergebnis:

{
    api_key: 'fa3af76b9396d0091c9c41ebe3c63716',
    artist: 'Green Day',
    format: 'json',
    method: 'artist.getInfo'
}

A: Beachten Sie, dass in ES6 und höher die Schlüssel der Objekte jetzt geordnet sind.

Zuvor war die Reihenfolge der Schlüssel in einem Objekt undefiniert Dies macht es schwierig, ein Objekt konsistent zu sortieren. Erwägen Sie, die Schlüssel zu sortieren, wenn das Objekt Benutzern angezeigt wird, anstatt sich auf die interne Sortierreihenfolge zu verlassen.

Wenn jedoch die Reihenfolge beibehalten wird, ist eine Möglichkeit zum Sortieren eines Objekts nach Eigenschaftsnamen:

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;
}

Das obige ist der detaillierte Inhalt vonWie sortiere ich ein JavaScript-Objekt alphabetisch nach Eigenschaftsnamen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn