函数的name属性返回函数的名字。
function fn() {}
fn.name // 'fn'
如果是通过变量赋值定义的函数,那么name属性返回变量名。
var f = function() {}
f.name // 'f'
但是,上面这种情况,只有在变量的值是一个匿名函数时才是如此,如果变量的值是一个具名函数,那么
name属性返回的function关键字之后的那个函数名。
var f = function myFunc() {}
f.name // 'myFunc'
上面的代码中,f.name返回函数表达式的名字。注意,真正的函数名还是f,而myFunc这个名字只在函数体内部可用。