Руководство по actionscript. часть 2, стр. 130
Код в функции, определенной внутри метода экземпляра, может обращаться к следующим определениям:
? ко всем определениям, доступным коду в глобальной области видимости;
? ко всем определениям, доступным коду в области видимости данного метода экземпляра;
? ко всем локальным переменным, вложенным функциям и пространствам имен, определенным внутри этой функции.
Код в функции, которая определена внутри другой функции, может обращаться к таким определениям:
? ко всем определениям, доступным коду в глобальной области видимости;
? ко всем определениям, доступным коду в области видимости внешней функции;
? ко всем локальным переменным, вложенным функциям и пространствам имен, определенным внутри этой функции.
Обзор областей видимости
Приведенный далее код демонстрирует все возможные области видимости языка ActionScript:
package {
// Размещенный здесь код находится в глобальной области видимости
public class SomeClass { // Этот код находится в области видимости класса SomeClass
public static function staticMeth ( ):void { // Размещенный здесь код находится в области видимости метода // staticMeth
}
public function instanceMeth ( ):void { // Этот код находится в области видимости метода instanceMeth
function nestedFunc ( ):void { // Размещенный здесь код находится в области видимости функции // nestedFunc
}
}
}
}
// Этот код находится в глобальной области видимости
Детали реализации
Для осуществления хранения информации об определениях в цепочке областей видимости среда Flash использует список объектов. Информацию об определениях для каждой области видимости хранят следующие объекты.