使用嵌套函数调用时,识别调用者函数以进行调试和其他目的非常有用。
JavaScript 提供了一个已弃用的名为 caller 的属性,该属性包含对调用当前函数的函数。但是,出于安全考虑,不鼓励使用此属性,不再建议使用。
function Hello() { alert("caller is " + Hello.caller); // Deprecated }
另一种非标准方法涉及使用参数对象,它提供传递给函数的参数数组。可以通过第二个参数(索引 1)的 callee.caller 属性来访问调用者函数。
function Hello() { alert("caller is " + arguments.callee.caller.toString()); // Non-standard }
JavaScript 不提供内置方法来检索调用堆栈。但是,使用诸如 debug 之类的外部库,可以获得详细的堆栈跟踪信息。这对于调试复杂代码和识别函数调用序列非常有用。
以上是如何发现 JavaScript 中的调用者函数?的详细内容。更多信息请关注PHP中文网其他相关文章!