2012-07-14 58 views

回答

12

可能取决于实施。

在某些实现中,函数对象的name属性用作函数的名称(如果它有一个)。在这些情况下,这可能是只读的。

这是一个非标准功能。

例如:

var foo = function bar() {}; 

alert(foo.name); // will give "bar" in some cases. 

在Firefox和Chrome,如果我尝试修改它,它不会改变......

var foo = function bar() {}; 

foo.name = "baz"; 
alert(foo.name); // still "bar" in Firefox and Chrome 

这里有一些关键点从文档...

非标准

“的名称属性返回一个函数的名称,或空字符串为匿名函数“

”您不能更改函数的名称,此属性为只读“

相关问题