У меня есть пользовательский объект, который содержит массив (называемый «дети»), где будут храниться объекты того же типа, в результате создается дерево.
Скажем, это выглядит так:Расширение объекта методом древовидного перемещения в javascript
function CustomObject(){
if (this instanceof Topic) {
this.text = "Test";
this.children = [];
} else
return new CustomObject(); }
Теперь я хотел бы добавить метод «ForAll» к этому объекту, который будет выполнять другую функцию, представленную в качестве аргумента, на все элементы этого дерева в глубине Первая мода. Каков наилучший способ сделать это?
К сожалению, это не работает. Кажется, что это только выполняется на первом элементе, а затем выходит с ошибкой. Его можно попробовать здесь: http://dl.dropbox.com/u/118505/psychojs/p.html –
@Piotr: Ваша ошибка, кажется, здесь: 'map.centralTopic.forAll (get_text())' - 'get_text()' вызовет функцию немедленно, но вы должны передать объект функции 'forAll', поэтому вы должны сделать' map.centralTopic.forAll (get_text) ' – casablanca
Да! Теперь я понимаю! Благодарю. –