是否有可能做到这一点:
myfile.js: function foo() { alert(<my-function-name>); // pops-up "foo" // or even better: "myfile.js : foo" }
我的堆栈中有 Dojo 和 jQuery 框架,所以如果其中任何一个更容易,它们都是可用的。
在 ES5 及更高版本中,无法访问该信息。
在旧版本的 JS 中,您可以使用arguments.callee.
arguments.callee
不过,您可能必须解析名称,因为它可能包含一些额外的垃圾。不过,在某些实现中,您可以简单地使用arguments.callee.name.
arguments.callee.name
解析:
function DisplayMyName() { var myName = arguments.callee.toString(); myName = myName.substr('function '.length); myName = myName.substr(0, myName.indexOf('(')); alert(myName); }
来源:Javascript - 获取当前函数名称。