我知道这是一个愚蠢的例子——但为什么这段代码会导致 bar 未定义的错误。javascript 不会查看 bar 是否是“this”对象的属性。我知道添加这个可以解决问题——但这往往会让我失望。例如,在其他编程语言(C#)中,这通常是多余的——为什么需要在下面的代码中添加它?
var myObject = {
foo : function(){
alert(bar);
},
bar : "hello world"
};
myObject.foo();