没有差别。第一种是以“字面量表达式”的方式创建数组,第二种则是以“构造函数”的方式创建数组。
他们的执行结果都是得到一个数组。
需要注意的一点是,数组的构造函数对于不同数量的传入参数,有不同的行为。
当传入参数是0个的时候,返回一个空数组,等价与[]。
当传入参数是1个且参数类型是数字的时候(例如参数是n),返回一个具有n个undefined元素的数组。
当传入参数是1个且参数类型不是数字的时候(例如参数是'A'),返回一个具有1个元素,且元素值是参数的数组。
当传入参数大于1个的时候,返回元素是参数的数组。
----------------------------------------------------------------------------
new Array() //=> []
new Array(3) //=> [undefined, undefined, undefined]
new Array('A') //=> ['A']
new Array(1, 2, 3) //=> [1, 2, 3]