Когда я нахожусь во флэш-отладчике и у меня сохранены некоторые обратные вызовы, я вижу, что у функций есть свойство с именем savedThis, которое очень полезно, чтобы узнать, откуда пришел этот обратный вызов.
Я пытаюсь получить доступ к этому свойству из кода, но по какой-то причине не могу.
callback.savedThis выдает ошибку, потому что не может найти свойство, вероятно, потому что оно является частным.
Поэтому я попытался добавить к классу Function метод, который предоставил бы мне к нему доступ:
Function.prototype.getSavedThis = function()
{
return this.savedThis
}
Но это дает мне ту же ошибку, что я не могу найти свойство, хотя я вижу его в отладчике. Есть ли способ получить к нему доступ?
Примечание: я не планирую использовать это в производственном коде, я создаю некоторые классы, чтобы помочь мне с отладкой, автоматизируя сбор некоторых данных, и было бы невероятно полезно получить эту информацию без необходимости добавлять код для каждого сохраненного обратного вызова информирование об этом объекте.





Вы можете получить ссылку на вызывающую функцию, используя свойство «arguments.callee».
Например:
bar( arguments.callee );
public function bar( caller:Function ) : void { trace( caller ); }
Но у меня нет возможности связать вызывающую функцию с объектом, которому она принадлежит.