Как получить значение 'this' функции вызывающего абонента?

Если у меня есть такая функция:

function foo(_this) {
    console.log(_this);
}

function bar() {}
bar.prototype.func = function() {
    foo(this);
}

var test = new bar();
test.func();

, то тестовый экземпляр bar регистрируется.

Однако, чтобы это работало, я необходимо передать this в функции bar.prototype.func . Мне было интересно, можно ли получить такое же это значение без передачи this .

Я попытался использовать arguments.callee.caller , но это возвращает саму функцию-прототип, а не значение this внутри функции-прототипа.

Можно ли зарегистрировать тестовый экземпляр bar ], вызывая только foo () в функции прототипа?

9
задан pimvdb 13 June 2011 в 14:46
поделиться