相关疑难解决方法(0)

使用"new"运算符创建对象时,我们可以省略括号吗?

我看到过以这种方式创建的对象:

const obj = new Foo;
Run Code Online (Sandbox Code Playgroud)

但我认为在创建对象时括号不是可选的:

const obj = new Foo();
Run Code Online (Sandbox Code Playgroud)

创建对象的前一种方法是否在ECMAScript标准中有效并定义?前一种创建对象的方式和后一种方法之间是否存在差异?一个比另一个更受欢迎吗?

javascript new-operator

219
推荐指数
5
解决办法
2万
查看次数

你为什么要在没有括号的情况下调用新的日期?

我刚刚在Gmail中打开开发工具时看到了这个片段:

var GM_TIMING_END_CHUNK1=(new Date).getTime();
Run Code Online (Sandbox Code Playgroud)

我通常会期待这样的事情,因为调用没有括号的构造函数是相当罕见的(至少我从未见过它直到现在):

var GM_TIMING_END_CHUNK1=new Date().getTime();
Run Code Online (Sandbox Code Playgroud)

要么

var GM_TIMING_END_CHUNK1=Date.now(); //newer browsers
Run Code Online (Sandbox Code Playgroud)

这样做有什么好处,行为有什么不同吗?这是完全相同的字符数量,所以简洁不是一个原因.

javascript datetime constructor

16
推荐指数
2
解决办法
1686
查看次数

标签 统计

javascript ×2

constructor ×1

datetime ×1

new-operator ×1