Ben*_*lts 2 javascript stack-trace
在javascript中,我可以使用foo.caller在堆栈跟踪中获取对foo之上的函数的引用.但是,当函数在同一堆栈跟踪中多次出现时,这不起作用,foo.caller只返回foo.
是否有一种稳定的,跨平台的方法来获取Javascript中的完整堆栈跟踪?我不希望得到一个可打印的堆栈跟踪; 相反,我正在进行堆栈检查以查看某个方法是否位于堆栈中的任何位置.这是我目前的代码:
function inFunction(foo) {
var caller = inFunction.caller;
var maxDepth = 20;
while(caller && --maxDepth > 0) {
if(caller == foo)
return true;
caller = caller.caller;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
任何想法如何处理堆栈跟踪中多次存在的函数?
| 归档时间: |
|
| 查看次数: |
811 次 |
| 最近记录: |