在 JavaScript 中,我们通常使用 new
操作符来创建一个新的对象。例如:
----- ------ - --- ---------
上述代码创建了一个名为 person
的新对象。但是,有些开发者可能会想知道是否可以省略这些括号,像这样:
----- ------ - --- -------
答案是:是的,可以省略括号。
省略括号的原因
在 JavaScript 中,当你使用 new
操作符调用函数时,你可以选择加或不加括号。这是因为 new
操作符只需要一个可调用表达式,并不强制要求使用括号。
实际上,在 ECMA-262 标准中,它被定义为:
NewExpression :
MemberExpression
new NewExpression
其中 MemberExpression
可以是任何可调用表达式,包括函数和构造函数。这意味着当你省略括号时,new
仍然能够正确地将可调用表达式识别为构造函数,并创建一个新的对象。
适用情况
虽然省略括号并没有什么问题,但对于阅读代码的其他开发者来说,这可能会导致一些困惑。因此,我们建议在使用 new
操作符时始终添加括号。
不过,有一种情况下可以省略括号,那就是当你使用 JavaScript 内置对象时。例如:
----- ----- - --- -----
这个例子中,Date
是一个内置构造函数,所以你可以省略括号。
示例代码
下面是一个在浏览器控制台中的示例代码,演示了如何使用 new
操作符来创建一个新的对象,并说明了如何省略括号:
-- -------- ----- ---------------- - --- --------- --------------------- - -------- ------------------------------ -- --------- -------- -- -------- ----- ------------------- - --- ------- ------------------------ - ------ --------------------------------- -- --------- ------ -- ------ ---- -- ----- --------------- - --- ------- ----------------------------- -- --------- -- ------ ---- -- ----- ------------------ - --- ----- -------------------------------- -- ---------
希望本文能够解答你关于省略括号在使用 new
操作符创建对象时是否可行的问题,并为你的代码编写提供参考。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/9271