Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.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
Javascript firebug-如何检测调用了哪些函数或从何处调用了函数_Javascript_Optimization_Firebug_Profiler - Fatal编程技术网

Javascript firebug-如何检测调用了哪些函数或从何处调用了函数

Javascript firebug-如何检测调用了哪些函数或从何处调用了函数,javascript,optimization,firebug,profiler,Javascript,Optimization,Firebug,Profiler,我正在尝试优化一个脚本,我正在使用firebug profiler查看哪些函数从那里开始使用的时间最多 我的问题是脚本使用jQuery和raphaeljs,它们的函数、事件等被列为“匿名”。都是 正如您在下面的图像中所看到的,我定义的所有内容都带有名称 这是我看到的图像(图像可读,只需放大一点(ctrl+“+”)) 因为我不打算修改jQuery或raphael,所以我真的不在乎调用的函数名是什么(尽管很高兴知道),但我真正感兴趣的是该函数是从哪里调用的(看看是否可以减少调用次数或其他)。你知道

我正在尝试优化一个脚本,我正在使用firebug profiler查看哪些函数从那里开始使用的时间最多

我的问题是脚本使用jQuery和raphaeljs,它们的函数、事件等被列为“匿名”。都是

正如您在下面的图像中所看到的,我定义的所有内容都带有名称

这是我看到的图像(图像可读,只需放大一点(ctrl+“+”))

因为我不打算修改jQuery或raphael,所以我真的不在乎调用的函数名是什么(尽管很高兴知道),但我真正感兴趣的是该函数是从哪里调用的(看看是否可以减少调用次数或其他)。你知道怎么做吗


谢谢您的帮助。

要查找调用当前函数的函数,请使用以下命令:

alert(arguments.callee.caller.name);
这将提醒调用方函数的名称。您也可以像这样使用层次结构:

arguments.callee.caller.caller.name 

要查找调用当前函数的函数,请使用以下命令:

alert(arguments.callee.caller.name);
这将提醒调用方函数的名称。您也可以像这样使用层次结构:

arguments.callee.caller.caller.name 

在Firebug中,使用堆栈面板来标识谁正在调用以及谁已被调用。
在调试过程中,使用未统一版本的脚本,以便在正确的位置断开断点。

在Firebug中,使用堆栈面板确定谁正在调用,谁已被调用。
在调试过程中,使用未统一版本的脚本,以便在适当的位置中断。

+1一般有用,但我知道我调用什么函数,需要知道它在不同的场景中调用什么(取决于参数,函数调用了一系列其他函数,它们也是,等等,等等……你明白了)。所以我需要对你所说的进行解释(这就是为什么我使用profiler,但anonymus是一个拦截器).似乎很奇怪..!!在这种情况下,只有调试才有用。根据参数,尝试
dryrun
流程。+1用于一般用途,但我知道调用什么函数,需要知道它在不同情况下调用什么(取决于参数,函数调用了一系列其他函数,它们也是,等等,等等……你明白了)。所以我需要对你所说的进行解释(这就是为什么我使用profiler,但anonymus是一个拦截器)。似乎很奇怪..!!在这种情况下,只有调试才有用。根据参数,尝试
dryrun
流。脚本->堆栈?如何做到这一点…在我的窗口中总是空的。我也在chrome中尝试过…堆栈跟踪是“未定义的等”。有什么建议吗(堆栈仅在出现错误/暂停时激活…我是否可以以某种方式更改此行为?我在同一页面中打开了firebug。我在quant.js脚本中添加了一个断点。然后我重新加载了该页面。脚本执行在breackpoint处停止。在firebug的右侧面板中,我单击了“堆栈”选项卡以显示堆栈跟踪。脚本->堆栈?我怎么做帽子…在我的窗口中总是空的。我也在chrome中尝试过…堆栈跟踪是“未定义的未定义的等”。有什么建议吗?:(堆栈仅在错误/暂停时激活…我是否可以以某种方式更改此行为?我在同一页面中打开了firebug。我在quant.js脚本中添加了一个断点。然后我重新加载了该页面。脚本执行在breackpoint处停止。在firebug的右侧面板中,我单击了“堆栈”选项卡以显示堆栈跟踪。