Andreas Dölling: Rekusrion läuft nicht

Beitrag lesen

hallo,
ich habe eine klasse _Node, welche eine baumstruktur abbildet (ganz ähnlich der DOM-node-klasse).
in dieser klasse gibt es eine methode getAllNodes(), welche eine flache liste aller _Node-objekte unterhalb des angesprochenen objekts liefert:

// returns an array containing all nodes contained in the _Node-object
_Node.prototype.getAllNodes = function () {
 var allChildren=new Array();
 allChildren=this.childNodes;

for (i=0; i<this.childNodes.length; i++) {
  if(this.childNodes[i].childNodes.length>0) {
   allChildren=allChildren.concat(this.childNodes[i].getAllNodes());
  }
 }
 return allChildren;
}

diese rekursive funktion läuft aber nicht bzw. endet in einer endlosschleife. einen logischen fehler kann ich aber nicht entdecken.
könnt ihr mir auf die sprünge helfen?

thanx und ciao,
andreas