可能重复:
What’s the difference between “Array()” and “[]” while declaring a JavaScript array?
这两种在javascript中定义数组的方法有什么区别?
var arrayList = []
和
var arrayListAgain = new Array();
答案 0 :(得分:4)
一个是好的,另一个是坏的: - )
不用说,第一种方式更短(通过线路发送的字节更少),并且没有任何奇怪的潜在问题。然而,第二个将正常工作。
new Array()
的奇怪部分是:如果将一个数字参数传递给构造函数,则意味着“初始化数组,以便存在给定的空数(null
)数组元素,以便length
等于给定的数字。“ (好吧,它必须是整数,我认为实际上。)如果你传递一个非数字,或两个或多个数字,这意味着,“初始化数组,使其内容反映这个参数列表“。
好的,现在我说有一个奇怪的部分,就是这样:如果你正在使用某种服务器端框架,并且你想创建一个数值值数组(整数值),比如说唯一的数据库密钥,然后你可能会想要这样做:
var keys = new Array(< @ favoriteTemplateLanguage.forEach(idList):print(id +',')@>);
(当然我编写了这种语法。)现在,如果服务器端的密钥列表中只有一个“id”,会发生什么?
答案 1 :(得分:2)
答案 2 :(得分:1)
答案 3 :(得分:1)
他们是一样的。根据{{3}}:
当前的最佳实践避开了 Javascript上的“new”关键字 原语。如果你想创建一个 new Array只需使用方括号[] 这......
var myArray = [];
我建议阅读该页面,它包含大量有关数组和JS的有用信息。