考虑这个javascript:
var foo = {bar : 1111};
console.log(foo);
console.log(foo.bar);
foo.bar = 2222;
console.log(foo);
console.log(foo.bar);
Run Code Online (Sandbox Code Playgroud)
在Firefox的firebug中,这显示了我的预期:
Object { bar=1111}
1111
Object { bar=2222}
2222
Run Code Online (Sandbox Code Playgroud)
但是,在Safari和Chrome的控制台中,它显示:
Object { bar=2222}
1111
Object { bar=2222}
2222
Run Code Online (Sandbox Code Playgroud)
换句话说,对象在打印转储时在控制台中显示错误的属性,但是如果打印特定属性则显示正确的值.
这是浏览器的怪癖吗?或者我缺少面向对象的javascript的一个基本方面?
javascript ×1