任何人都可以解释一下为什么foo.bar未定义? 根据我的理解,它应该打印3.如果我错了,请纠正我。
这是代码。
var bar = 1,
foo = {};
foo: {
bar: 2;
baz: ++bar;
};
foo.bar; //undefined
foo.baz; //undefined
bar; //2
提前致谢;
答案 0 :(得分:9)
您的拼写错误为foo = {
而不是foo: {
。属性也必须用逗号分隔,
而不是分号:
var bar = 1,
foo = {};
foo = {
bar: 2,
baz: ++bar
};
console.log(foo.bar); //2
console.log(foo.baz); //2
console.log(bar); //2
答案 1 :(得分:4)
答案 2 :(得分:0)
因为你的语法错了。重新初始化=
的变量时应该是javascript
赋值运算符:
var bar = 1,
foo = {};
foo = {
bar: 2,
baz: ++bar,
};
foo.bar; //2
foo.baz; //2
bar; //2