天道酬勤,学无止境

dojo-1.6

我可以在JavaScript中获取当前正在运行的函数的名称吗?(Can I get the name of the currently running function in JavaScript?)

问题 是否有可能做到这一点: myfile.js: function foo() { alert(<my-function-name>); // pops-up "foo" // or even better: "myfile.js : foo" } 我的堆栈中有Dojo和jQuery框架,因此,如果这两个框架都使它变得更容易,它们将可用。 回答1 在ES5及更高版本中,无法访问该信息。 在旧版JS中,您可以使用arguments.callee来获取它。 但是,您可能必须解析名称,因为它可能包括一些额外的垃圾。 但是,在某些实现中,您可以简单地使用arguments.callee.name来获取名称。 解析: function DisplayMyName() { var myName = arguments.callee.toString(); myName = myName.substr('function '.length); myName = myName.substr(0, myName.indexOf('(')); alert(myName); } 来源:Javascript-获取当前函数名称。 回答2 对于非匿名函数 function foo() { alert(arguments.callee.name) } 但是如果是错误处理程序,结果将是错误处理程序函数的名称

2021-03-26 09:46:24    分类:技术分享    javascript   jquery   dojo-1.6

Can I get the name of the currently running function in JavaScript?

Is it possible to do this: myfile.js: function foo() { alert(<my-function-name>); // pops-up "foo" // or even better: "myfile.js : foo" } I've got the Dojo and jQuery frameworks in my stack, so if either of those make it easier, they're available.

2021-03-21 20:39:21    分类:问答    javascript   jquery   dojo-1.6