Я написал следующий код:класса дочерние функции относятся к родителю
class TheClass
children: []
addChild: (argone, argtwo) ->
pos = @children.push new TheClass argone, argtwo
@children[pos - 1]
iterateChildren: ->
console.log @children
for child in @children
child.iterateChildren()
constructor: (@argone, @argtwo) ->
a = new TheClass 1,1
b = a.addChild 2,2
c = a.addChild 3,3
ba = b.addChild 4,4
ca = c.addChild 5,5
a.iterateChildren()
Класс имеет одну функцию, чтобы добавить дочерний объект и одну функцию для перебора его детей, говоря им сделать то же самое.
В отличие от моих ожиданий, этот код неоднократно вызывает метод iterateChildren(), а не его дочерние элементы, что приводит к тому, что дочерний массив печатается бесконечно.
Что я сделал не так, и как я могу это исправить?