在node.js中获取调用函数的名称和行

在node.js中获取调用函数的名称和行,第1张

在node.js中获取调用函数的名称和行

您可以添加一些原型以提供从V8访问此信息的权限:

Object.defineProperty(global, '__stack', {get: function() {        var orig = Error.prepareStackTrace;        Error.prepareStackTrace = function(_, stack) { return stack;        };        var err = new Error;        Error.captureStackTrace(err, arguments.callee);        var stack = err.stack;        Error.prepareStackTrace = orig;        return stack;    }});Object.defineProperty(global, '__line', {get: function() {        return __stack[1].getLineNumber();    }});Object.defineProperty(global, '__function', {get: function() {        return __stack[1].getFunctionName();    }});function foo() {    console.log(__line);    console.log(__function);}foo()

分别返回“ 28”和“ foo”。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4978221.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存