JavaScript 调用者信息
在 JavaScript 中,可以获得有关函数调用另一个函数的详细信息。
调用者函数名称
您已经提到了检索调用者函数名称的方法:
var callerFunc = arguments.callee.caller.toString(); callerFuncName = (callerFunc.substring(callerFunc.indexOf("function") + 8, callerFunc.indexOf("(")) || "anoynmous")
调用者线路号码
要提取调用该方法的行号,您可以利用 Error 对象:
function getErrorObject(){ try { throw Error('') } catch(err) { return err; } } var err = getErrorObject(); var caller_line = err.stack.split("\n")[4]; var index = caller_line.indexOf("at "); var clean = caller_line.slice(index+2, caller_line.length);
在此代码中,getErrorObject 函数生成一个错误对象。通过访问 stack 属性,您可以检索堆栈跟踪,其中包含有关当前调用上下文的信息。
调用者文件源 URL
不幸的是,直接获取 JavaScript在大多数 JavaScript 实现中,调用该方法的文件源 URL 是不可能的。
以上是如何检索有关 JavaScript 调用程序函数的信息?的详细内容。更多信息请关注PHP中文网其他相关文章!