首页 > web前端 > js教程 > 如何可靠地识别 JavaScript 中的调用函数?

如何可靠地识别 JavaScript 中的调用函数?

Patricia Arquette
发布: 2024-12-29 20:44:12
原创
935 人浏览过

How Can I Reliably Identify the Caller Function in JavaScript?

JavaScript 中的调用者函数识别

在 JavaScript 中,函数的 caller 属性允许您检索调用它的函数的名称。但是,此属性已被视为已弃用,不再建议使用。

function main() {
  Hello();
}

function Hello() {
  // How do you find out the caller function is 'main'?
}
登录后复制

查找调用堆栈

要确定调用堆栈,您可以使用arguments.callee .caller.toString(),但这也已被弃用。请注意,此解决方案是非标准的,可能无法在所有浏览器或 JavaScript 实现中工作。

已弃用的解决方案

function Hello() {
  alert(`caller is ${arguments.callee.caller.toString()}`);
}
登录后复制

现代解决方案

更现代的解决方案是使用新的Error().stack.

function Hello() {
  console.log(new Error().stack);
}
登录后复制

这将输出堆栈跟踪,其中包括调用者函数的名称。

重要提示:

caller 属性和arguments.callee.caller.toString() 已弃用,不应用于生产代码。始终使用新的 Error().stack 解决方案来获取调用堆栈。

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

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板