JavaScript 获取函数对象的名称

示例

6

ES6

myFunction.name

关于MDN的说明。自2015年起,可以在nodejs和除IE之外的所有主要浏览器中使用。


5

ES5

如果您有对该功能的引用,则可以执行以下操作:

function functionName( func )
{
    // 比赛:
    // -^字符串的开头
    // -功能一词“功能”
    // -\ s +至少有一些空格
    // -([\ w \ $] +)捕获一个或多个有效的JavaScript标识符字符
    // -\(后跟大括号
    //
    var result = /^function\s+([\w\$]+)\(/.exec( func.toString() )
    
    return result ? result[1] : ''
}