创建具有大括号的对象属性时的差异

时间:2015-10-11 12:14:21

标签: javascript

有什么区别:

_object = {
   alpha: true,
   beta: for (a in c) {...},
   omega: function x{...} 
}

_object = {
   alpha: {true}, 
   beta: {for (a in c) {...}},
   omega: { function x{...} }
}

我想知道为什么在处理对象中的长代码时使用花括号。是因为我们正在处理第一个处理属性的对象内部的对象吗?还有其他问题吗?

2 个答案:

答案 0 :(得分:0)

由于您的代码是伪代码,因此这里是功能代码:

_object = {
  alpha: true, 
  beta: {a: "word"},
  omega: false
}

console.log(_object);

把它放在小提琴里看看对象。 ' beta'是一个正确语法的对象。你这样做的原因是为了获得对象优于基本类型的所有好处。

答案 1 :(得分:0)

如果需要声明,{会启动代码块。

如果需要表达式,{将启动一个对象文字。在您的情况下,由于您在密钥后使用{,因此它会启动对象文字。对象文字必须是{ key: value, ... }形式。由于您提供的示例都不遵循此表单,因此它们是无效的语法,并将导致解析错误。