„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie kann man ein Objekt (Baum) rekursiv in JavaScript oder JQuery durchqueren?

Wie kann man ein Objekt (Baum) rekursiv in JavaScript oder JQuery durchqueren?

Gepostet am 2025-03-23
Durchsuche:406

How to Traverse an Object (Tree) Recursively in JavaScript or jQuery?

Looping through an Object (Tree) Recursively

In JavaScript or jQuery, traversing an object and its descendants can be achieved using the for...in loop:

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

Beachten Sie, dass die für ... in Schleifen über alle aufzählbaren Eigenschaften iteriert, einschließlich derer, die aus dem Prototyp des Objekts geerbt wurden. Um nicht auf ererbten Eigenschaften zu wirken, verwenden Sie HasownProperty:

for (var key in foo) {
  if (!foo.hasOwnProperty(key)) continue;
  if (key == "child") {
    // Do something with child
  }
}

rekursive Looping

um rekursiv zu loop, erstellen Sie eine rekursiv für (var key in obj) { if (typeof obj [key] === "Objekt" & amp; & amp; obj [key]! == null) { jeder rezisive (obj [key]); } anders { // etwas mit primitivem Wert tun } } }

 Diese Funktion kann sowohl Objekte als auch Arrays umgehen und ihre verschachtelte Struktur rekursiv durchqueren. 
Freigabeerklärung Dieser Artikel wird reproduziert unter: 1729579817 Wenn ein Verstoß vorliegt, wenden Sie sich bitte an [email protected], um ihn zu löschen.
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3