Автоопределение контекста в функциях JavaScript - PullRequest
1 голос
/ 16 ноября 2010

Примите во внимание этот код:

function a() {
  alert(this.variable);
}

b = new function() {
  this.variable = "abc";
  a.call(this);
}

Есть ли способ автоматического переопределения контекста вместо использования метода вызова?вот так (не работает):

function a() {
  var _this = Function.caller;  
  alert(_this.variable);
}

b = new function() {
  this.variable = "abc;
  a();
}

Заранее спасибо.

1 Ответ

0 голосов
/ 16 ноября 2010

Если вы хотите, чтобы a имел доступ к b this, вам придется явно передать this, т.е. вместо a() do a(this).

...