<分区>
我正在将命名函数表达式分配给对象的属性:
var foo = {};
foo.bar = function bar(){
console.log('bar');
};
foo.bar()
=> barbar()
=> ReferenceError: bar is not defined
为什么不能直接调用bar()
,为什么没有定义?
我知道我可以像 var bar = foo.bar = function(){}
一样简单地链接赋值,所以我不是在寻找解决方法或其他解决方案,我我只对为什么它不起作用感兴趣。
我已经在 Chrome 控制台和 Node.JS 中进行了测试。