function getFunctionName(fn) { if (typeof fn != "function") throw "the argument must be a function."; var reg = /W*functions+([w$]+)s*\(/; var name = reg.exec(fn); if (!name) { return '(Anonymous)'; } return name[1]; }