gpt4 book ai didi

javascript:获取调用函数的名称

转载 作者:行者123 更新时间:2023-11-29 15:01:23 27 4
gpt4 key购买 nike

我正在编写一个错误事件处理程序来捕获错误并向服务器发出 ajax 调用以报告错误。问题是很多时候,我的代码看起来像这样:

function A() {

//lots of works to calculate SomeParameters; can bug
CalledVeryOften(SomeParameters);
}

function CalledVeryOften(SomeParameters) {
// a little bit of work
}

如果我在函数 A(或 B、C、D...)中捕获事件,太好了!但问题是,如果 window.onerror 事件在 CalledVeryOften 中触发,则可能是参数计算不正确。

在 CalledVeryOften 中有没有办法确定它是从哪个函数调用的?

谢谢。

最佳答案

可以通过已弃用的arguments.callee.caller.name 属性获取调用函数的名称MDN: arguments.callee .

另一种方法是解析 new Error().stack 的值.

在 Chrome 中,您可以使用:

var stackTrace = {};
Error.captureStackTrace(stackTrace); // Get the stack trace
stackTrace = stackTrace.stack; // Formatted string

关于javascript:获取调用函数的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9748498/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com