Array.pop в Node пропускает и забывает элемент функции

У меня была идея хранить код в виде списков (массивов) в Node и выполнять их, но это сложнее, чем я думал: если бы я создать список с функцией в начале или в конце, .pop или .shift удаляет, но пропускает его и возвращает следующий элемент:

> l = [1, 75, 84, function() { console.log('aseuht') }]
[ 1, 75, 84, [Function] ]
> l.pop()
84
> l
[ 1, 75 ]

Я заметил это в Node v0 .4.9, но он все еще присутствует в 0.6.10.

Есть ли обходной путь для этого?

обновление: Я отправил проблему на GitHub .

обновление 2: ошибка присутствует только в моей оболочке, когда я запускаю эти команды из автономного скрипта, она работает правильно. Так что это просто проблема оболочки.

5
задан culebrón 17 February 2012 в 17:55
поделиться