6.1 Object
显式地创建Object的实例有两种方式。
第一种是使用new操作符和Object构造函数
另一种方式是使用对象字面量(object literal)表示法。
对象字面量是对象定义的简写形式,目的是为了简化包含大量属性的对象的创建。
比如,下面的代码定义了与前面示例相同的person对象,但使用的是对象字面量表示法:
左大括号({)表示对象字面量开始,因为它出现在一个表达式上下文(expressioncontext)中。在ECMAScript中,表达式上下文指的是期待返回值的上下文。赋值操作符表示后面要期待一个值,因此左大括号表示一个表达式的开始。同样是左大括号,如果出现在语句上下文(statement context)中,比如if语句的条件后面,则表示一个语句块的开始。
属性的存取方法:
通过点语法存取的,这也是面向对象语言的惯例
使用中括号存取属性。在使用中括号时,要在括号内使用属性名的字符串形式
从功能上讲,这两种存取属性的方式没有区别。
使用中括号的主要优势:
可以通过变量访问属性
如果属性名中包含可能会导致语法错误的字符,或者包含关键字/保留字时,也可以使用中括号语法
通常,点语法是首选的属性存取方式,除非访问属性时必须使用变量。
