apache-flex - 在 Function 中访问 savedThis 属性

标签 apache-flex flash actionscript-3

当我在 Flash 调试器中并保存了一些回调时,我可以看到这些函数有一个名为 savedThis 的属性。知道回调来自哪里非常有用。

我正在尝试从代码中访问该属性,但由于某种原因我不能。
callback.savedThis抛出一个错误,因为它找不到该属性,可能是因为它是私有(private)的。

所以我尝试向 Function 类添加一个方法,让我可以访问它:

Function.prototype.getSavedThis = function()
{
    return this.savedThis
}

但它给了我关于找不到该属性的相同错误,即使我可以在调试器中看到它。
有没有办法访问它?

备注 :我不打算在生产代码中使用它,我正在制作一些类来通过自动化一些数据收集来帮助我进行调试,并且无需将代码添加到每个保存的回调通知中,获取这些信息将非常有用这个对象的。

最佳答案

您可以使用“arguments.callee”属性获取对调用函数的引用。
例如:

bar( arguments.callee );
public function bar( caller:Function ) : void { trace( caller ); }

关于apache-flex - 在 Function 中访问 savedThis 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/269110/

相关文章:

apache-flex - Flex Panel 在获得焦点时不会调用 focusInHandler()

flash - 如何在我的站点中嵌入 Flash 录音机

performance - 在ActionScript 3中扩展类的负面影响是什么?

actionscript-3 - 闪存 AS3 :Multiple function in one key?

flash - 使 Starling FrameWork 与使用 native DisplayObject 的类一起使用

apache-flex - 如何在 Adob​​e Flex/AIR 应用程序中存储用户首选项

actionscript-3 - StageWebView 和 Android 的缩放/缩放问题

apache-flex - Ant 和 Flex-4 问题,未找到 MXMLC.jar!

Flash 和 HTTP 状态代码 207

flash - Math.floor 是否像 ActionScript 3 中的 Math.round 一样?