javascript - 这些在 javascript 中定义数组的方法有什么区别?

标签 javascript

<分区>

Possible Duplicate:
What’s the difference between “Array()” and “[]” while declaring a JavaScript array?

这两种在 javascript 中定义数组的方法有什么区别?

var arrayList = []

var arrayListAgain = new Array();

最佳答案

一个好,一个坏:-)

不严重,第一种方法更短(通过线路发送的字节更少)并且它没有任何奇怪的潜在问题。但是,第二个可以正常工作。

new Array() 的奇怪之处在于:如果您将 一个 数字参数传递给构造函数,它意味着“初始化数组,以便有是给定数量的空 (null) 数组元素,因此 length 等于给定数量。” (嗯,它必须是一个整数,我认为实际上。)如果你传递一个非数字,或者两个或更多数字,这意味着,“初始化数组,使其内容反射(reflect)这个论点列表。”

好吧,现在我说了有一个奇怪的部分,那就是:如果你正在使用某种服务器端框架,并且你想创建一个数值数组(整数值),比如唯一的数据库键,那么您可能会想这样做:

var keys = new Array(<@favoriteTemplateLanguage.forEach(idList): print(id + ',') @>);

(当然是我编造的语法。)现在,如果您的服务器端键列表中只有一个“id”会怎样?

关于javascript - 这些在 javascript 中定义数组的方法有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3348233/

相关文章:

javascript - 尝试使用 Javascript 更改图像源,但不起作用

javascript - event.key 在移动浏览器中对于 keyup、keydown 和 keypress 是未定义的

javascript - FlatList 不渲染图像

javascript - oAuth 交换后关闭 Chrome 窗口

php - 基于历史的个性化搜索结果

javascript - 使用 window.onbeforeunload 关闭窗口之前等待函数完成

javascript - Photoshop javascript 将图层缩放到 Canvas ,如果或,则居中

javascript - 当另一个字段不为空时,输入字段将成为必需字段

javascript - 缩图预览,加载url到div

javascript - 如何删除和清除所有 localStorage 数据