在Node.js中,我正在尝试获取正在执行的当前函数的名称:
function doSomething(req, res) {
console.log('Function name: ' + doSomething.name);
}
这很有效,但我希望(如果可能的话)在当前上下文中获取名称。这样,如果我稍后重命名该方法,我没有手动更改它。是否有一个通用对象(即类似于'this')指向正在执行的当前函数/当前上下文?谢谢。
答案 0 :(得分:0)
我不想在Ian的“可能的重复”建议中重复这些答案,但除了它们之外还有一个值得一提的解决方案:
您可以使用命名函数表达式,使用一个名称,可以从函数外部访问,也可以从内部访问一个名称:
var x = function y() {
console.log(y);
};
console.log(x);
现在,如果您决定为您的函数指定其他名称,则只需更改x
,同时仍然可以使用y
来引用该函数。
答案 1 :(得分:0)
简短回答:SQL Agent job
或Object.values(this)[0].name
第一个选项的长答案:
arguments.callee.name
将对象属性枚举为数组
let myInstanceArray = Object.values(this)
获取数组中的第一个也是唯一的项
let myInstance = myInstanceArray[0]
获取项目的名称。