Heim >Web-Frontend >js-Tutorial >Wie durchläuft man ein Objekt (Baum) rekursiv in JavaScript oder jQuery?
Rekursives Durchlaufen eines Objekts (Baums)
In JavaScript oder jQuery kann das Durchlaufen eines Objekts und seiner Nachkommen mithilfe des for erreicht werden. ..in-Schleife:
<code class="javascript">for (var key in foo) { if (key == "child") { // Do something with child } if (key == "bar") { // Do something with bar } if (key == "grand") { // Do something with grand } }</code>
Beachten Sie, dass die for...in-Schleife alle aufzählbaren Eigenschaften durchläuft, einschließlich der vom Prototyp des Objekts geerbten. Um zu vermeiden, dass auf geerbte Eigenschaften eingegriffen wird, verwenden Sie hasOwnProperty:
<code class="javascript">for (var key in foo) { if (!foo.hasOwnProperty(key)) continue; if (key == "child") { // Do something with child } }</code>
Rekursive Schleife
Um eine rekursive Schleife durchzuführen, erstellen Sie eine rekursive Funktion:
<code class="javascript">function eachRecursive(obj) { for (var key in obj) { if (typeof obj[key] === "object" && obj[key] !== null) { eachRecursive(obj[key]); } else { // Do something with primitive value } } }</code>
Diese Funktion kann sowohl Objekte als auch Arrays verarbeiten und ihre verschachtelte Struktur rekursiv durchlaufen.
Das obige ist der detaillierte Inhalt vonWie durchläuft man ein Objekt (Baum) rekursiv in JavaScript oder jQuery?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!