var x = [];
var y = new Array();
它的代码量更少,更易读;
它可以强调对象就是一个简单的可变的散列表,而不必一定派生自某个类;
对象字面量运行速度更快,因为它们可以在解析的时候被优化:它们不需要"作用域解析(scope resolution)";因为存在我们创建了一个同名的构造函数Object()的可能,当我们调用Object()的时候,解析器需要顺着作用域链从当前作用域开始查找,如果在当前作用域找到了名为Object()的函数就执行,如果没找到,就继续顺着作用域链往上照,直到找到全局Object()构造函数为止
Object()构造函数可以接收参数,通过这个参数可以把对象实例的创建过程委托给另一个内置构造函数,并返回另外一个对象实例,而这往往不是你想要的。
参考来自于: https://segmentfault.com/a/1190000008462406