![]() |
|
||||||||||
|
|||||
|
Регистрация: Nov 2001
Адрес: spb.ru
Сообщений: 177
|
Почему у потомков _global не определяются типы? Что я сделал не так?
function trackObject (obj, objName, level) {
var indent = "";
for (var tab = 1; tab <= level; tab ++) {
indent += "\t";
}
var type = typeof obj;
trace (indent + objName + " (" + type + ")");
ASSetPropFlags(obj,null,6,true);
for (var prop in obj) {
trackObject (prop[obj], prop, level + 1);
}
}
trackObject (_global, "_global", 0);
|
|
|||||
|
Регистрация: Nov 2001
Адрес: spb.ru
Сообщений: 177
|
Назначение кода, не в том, чтобы он перечислил свойства некоторого объекта, а в том, чтобы он рекурсией прошелся по объектам _global'а. А он перечисляет только непосредственно потомков глобала, а рекурсия дальше не копает потому, что у этих потомков оказывается тип - undefined. Хотя, насколько я понимаю, у них должны быть типы Object, String, Function и т.д.
|
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
ыыы... :))
не: trackObject (prop[obj], prop, level + 1); а: trackObject (obj[prop], prop, level + 1); но учти что рекурсия у тебя будет бесконечная, так что там еще надо условий выхода понавесить... |
|
|||||
|
Регистрация: Nov 2001
Адрес: spb.ru
Сообщений: 177
|
Ё-МОЁ!!!!!!!!!!!
Про prop[obj] действительно смешно получилось! Надо же и, главное, сколько не просмаривал - ошибки не видно. Вот что значит взгляд со стороны! Большое спасибо. Насчет бесконечности это в __proto__.apply? Чего это за функция такая? "Вещь в себе", можно сказать =). |
![]() |
Часовой пояс GMT +4, время: 23:56. |
|
|
« Предыдущая тема | Следующая тема » |
|
|