Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie erstelle ich rekursiv hierarchische Eigenschaftslisten in JavaScript?

Barbara Streisand
Freigeben: 2024-10-20 14:28:02
Original
516 Leute haben es durchsucht

How to Recursively Create Hierarchical Property Lists in JavaScript?

Hierarchische Eigenschaftslisten mit Rekursion erstellen

Das Durchlaufen komplexer verschachtelter Objekte zum Erstellen hierarchischer Eigenschaftslisten ist eine häufige Aufgabe in JavaScript. Bei einem Objekt mit einer möglicherweise komplexen Struktur besteht das Ziel darin, eine Liste von Eigenschaftsschlüsseln zu generieren, die die Struktur des Objekts widerspiegeln.

Um dieses Problem zu beheben, können wir eine rekursive Funktion verwenden, die das Objekt durchläuft. Hier ist eine verbesserte Version der bereitgestellten Funktion:

function iterate(obj, stack) {
    for (var property in obj) {
        if (obj.hasOwnProperty(property)) {
            if (typeof obj[property] == "object") {
                iterate(obj[property], stack + '.' + property);
            } else {
                console.log(property + "   " + obj[property]);
                $('#output').append($("<div>").text(stack + '.' + property));
            }
        }
    }
}
Nach dem Login kopieren

In dieser Funktion verwalten wir eine Zeichenfolge namens „stack“, die den aktuellen Pfad innerhalb des Objekts darstellt. Wenn wir auf ein Unterobjekt stoßen, hängen wir seine Eigenschaft an den Stapel an und setzen die Rekursion fort. Für primitive Eigenschaften protokollieren wir ihre Pfade und hängen sie zur Visualisierung an ein Div an.

Durch Aufrufen der Funktion „iterate“ mit dem Originalobjekt und einem leeren Anfangsstapel können wir rekursiv die gewünschte hierarchische Liste von Eigenschaftsschlüsseln erstellen .

Das obige ist der detaillierte Inhalt vonWie erstelle ich rekursiv hierarchische Eigenschaftslisten in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!