在 JavaScript 中,您可以创建一个新数组,例如:
var arr = new Array();
或喜欢:
var arr2 = [];
有什么区别,为什么你会做一个而不是另一个?
在 JavaScript 中,您可以创建一个新数组,例如:
var arr = new Array();
或喜欢:
var arr2 = [];
有什么区别,为什么你会做一个而不是另一个?
new Array(2)
引出一个大小为2的数组,其中包含两个undefined
s。 生成一个大小为1[2]
的数组,其中包含数字2。IMO 不符合 JavaScript 的精神,尽管它可能使数组构造更容易找到。这可能很重要,也可能不重要(我几乎只在 JavaScript 中对所有适用类型使用文字,并且我已经成功地编写/维护了大量 JavaScript [30-50 KLOC])。new Array
编辑我猜经验丰富的 javascript 程序员避免使用new Array
语法的原因是:
(new Array(X)).length == 1
它在参数编号和类型之间的行为不一致(X
只要 typeof(X) != "number"
[]
优先使用的另一个(次要)原因new Array()
是它Array
可能会被覆盖(尽管我从未见过它发生)并且[]
保证可以工作。
Array = "something";
var a = new Array(); // Fails
var b = []; // Works
我相信它们是相同的。我从不使用 new Array();