Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash 跟踪运行函数的内容_Flash_Actionscript 3 - Fatal编程技术网

Flash 跟踪运行函数的内容

Flash 跟踪运行函数的内容,flash,actionscript-3,Flash,Actionscript 3,私有函数dataLevel():void{ }仅将变量命名为事件不会使其成为事件对象(并为其指定目标属性)。使用跟踪(事件)跟踪传递的参数。更好的是,将变量名更改为arg1(argument1)或更合理的名称 private function createBranch(arg1:Object):void { trace(arg1); } event通常用于事件处理程序中类型为event的变量或其子类。听起来您基本上是在尝试沿着堆栈跟踪线获取某些内容。您可以在运行时从ErrorExce

私有函数dataLevel():void{

}

仅将变量命名为事件不会使其成为
事件
对象(并为其指定目标属性)。使用
跟踪(事件)
跟踪传递的参数。更好的是,将变量名更改为arg1(argument1)或更合理的名称

private function createBranch(arg1:Object):void 
{
    trace(arg1);
}

event
通常用于事件处理程序中类型为
event
的变量或其子类。

听起来您基本上是在尝试沿着堆栈跟踪线获取某些内容。您可以在运行时从ErrorException类获取堆栈跟踪的字符串表示,但只能在FlashPlayer的调试模式下

现在,这只适用于播放器的调试版本,在标准版本中,“getStackTrace()”返回null,因此这不适用于任何生产应用程序

唯一的另一种选择是将令牌传递到“createBranch”以指示调用来自何处(我认为这也将确定您正在创建的“分支”的类型?),这将是一种更好的方法,可以让您的逻辑更清晰,我认为:

private function createBranch(arg1:Object, branchType:String):void 
{
    switch(branchType){
        case "type1":
             //create your branch type1 here
             break;
        case "type2":
             //create your branch type2 here
             break;
        case "type3":
             //create your branch type3 here
             break;
    }
}

类似这样的情况。

您可以看到,我有3个条件运行createBranch();在createBranch函数中,我想知道它是由哪一个函数运行的
private function createBranch(arg1:Object):void 
{
    var stacktrace:String = new Error().getStackTrace();
    //parse 'stacktrace' and do what you want here.
}
private function createBranch(arg1:Object, branchType:String):void 
{
    switch(branchType){
        case "type1":
             //create your branch type1 here
             break;
        case "type2":
             //create your branch type2 here
             break;
        case "type3":
             //create your branch type3 here
             break;
    }
}