黄子涵

4.6 对象创建表达式

对象创建表达式(object creation expression)创建一个对象并调用一个函数(这个函数称做构造函数)初始化新对象的属性。对象创建表达式和函数调用表达式非常类似,只是对象创建表达式之前多了一个关键字 new:

> new Object()
> new Point(2,3)

如果一个对象创建表达式不需要传入任何参数给构造函数的话,那么这对空圆括号是可以省略掉的:

new Object
new Date

当计算一个对象创建表达式的值时,和对象初始化表达式通过。创建对象的做法一样,JavaScript 首先创建一个新的空对象,然后,JavaScript 通过传入指定的参数并将这个新对象当做 this 的值来调用一个指定的函数。这个函数可以使用 this 来初始化这个新创建对象的属性。那些被当成构造函数的函数不会返回一个值,并且这个新创建并被初始化后的对象就是整个对象创建表达式的值。如果一个构造函数确实返回了一个对象值,那么这个对象就作为整个对象创建表达式的值,而新创建的对象就废弃了。

posted @ 2022-05-25 17:07  黄子涵  阅读(35)  评论(0编辑  收藏  举报