很值得思考的问题,不过没想到办法,不过给你找一个歪果仁极其 hack 的做法吧,也算是欣赏:'use strict'function jamie (){var callerName;try { throw new Error(); }catch (e) { var re = /(\w+)@|at (\w+) \(/g, st = e.stack, m; re.exec(st), m = re.exec(st); callerName = m[1] || m[2];}console.log(callerName);};function jiminyCricket (){ jamie();}jiminyCricket(); // jiminyCricket有时间我会再想一想的。参考:How do you find out the caller function in JavaScript when use strict is enabled?