Показать сообщение отдельно
  #15 (permalink)  
Старый 06.11.2009, 13:13
Профессор
Отправить личное сообщение для Dmitry A. Soshnikov Посмотреть профиль Найти все сообщения от Dmitry A. Soshnikov
 
Регистрация: 25.02.2008
Сообщений: 707

Сообщение от Riim
Как это для аксессора формулируется? "Алгоритм разрешения имени идентификатора который в аксессоре", или "Алгоритм разрешения аксессора", или еще как-то?
Если стоит просто obj, то - это MemberExpression -> PrimaryExpression -> Identifier. Соответственно, разрешение имени получается для obj.

Если obj.m, то это MemberExpression.Identifier. Соответственно, для m.

Ещё, акксессор (чтобы не путать терминологию) - это выражение доступа к свойству - точка или квадратные скобки, но не сами свойства.

Сообщение от Riim
А кто это?
Объект активации.

Ситуация, когда базовым объектом будет является объект активации, может быть, например, при вызове вложенной функции внутри родительской функции:

function foo() {
  function bar() { return this; }
  alert(bar()); // равносильно AO.bar() => null.bar(); => Global.bar();
}


Декларации функций, переменные и формальные параметры - являются свойствами объекта активации.
__________________
Тонкости ECMAScript
Ответить с цитированием