首页 >web前端 >js教程 >如何确定 JavaScript 中调用函数的详细信息?

如何确定 JavaScript 中调用函数的详细信息?

Linda Hamilton
Linda Hamilton原创
2024-10-20 21:53:02315浏览

How to Determine the Details of the Caller Function in JavaScript?

发现 JavaScript 中的调用函数详细信息

确定函数调用的来源可以为调试和分析提供有价值的见解。本文探讨了如何在 JavaScript 中获取调用者函数的行号和源 URL。

获取调用者的行号

提供的代码有效检索函数的名称使用arguments.callee.caller对象的调用者函数。但是,获取行号需要不同的方法。一种方法涉及利用 Error 对象:

<code class="js">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);</code>

Error 对象的 stack 属性包含堆栈跟踪,其中包括导致错误的函数调用的行号和源 URL。通过解析这个字符串,可以提取出调用函数的行号。

获取调用者的源URL

同样,可以从堆栈中获取源URL Error 对象的属性:

<code class="js">var caller_url = err.stack.split("\n")[4];
var index = caller_url.indexOf("(");
var clean = caller_url.slice(index + 1, caller_url.length - 1);</code>

括号之间的堆栈跟踪部分包含调用者函数的源 URL。

以上是如何确定 JavaScript 中调用函数的详细信息?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn