一些返回相同对象的函数,无论是否作为构造函数调用。
在性能方面,我应该使用
new RegExp(rg, flags);
new Array(1000);
new Object(whatever);
...
或者
RegExp(rg, flags);
Array(1000);
Object(whatever);
...
?
编辑:我错了,如果我使用Object()
或new Object()
一些返回相同对象的函数,无论是否作为构造函数调用。
在性能方面,我应该使用
new RegExp(rg, flags);
new Array(1000);
new Object(whatever);
...
或者
RegExp(rg, flags);
Array(1000);
Object(whatever);
...
?
编辑:我错了,如果我使用Object()
或new Object()
这取决于类型。因为Array
它是等价的:
当
Array
作为函数而不是构造函数调用时,它会创建并初始化一个新Array
对象。因此,函数调用Array(…)
等效于new Array(…)
具有相同参数的对象创建表达式。
对于Object
:
当
Object
作为函数而不是构造函数调用时,它执行类型转换。当Object
作为new
表达式的一部分被调用时,它是一个可以创建对象的构造函数。
您可以在spec中查找其他类型。