javascript - 在 JavaScript 中声明数组的方式是什么?

标签 javascript arrays

我刚开始学习 JavaScript,似乎有很多方法可以声明数组。

  1. var myArray = new Array()
  2. var myArray = new Array(3)
  3. var myArray = ["apples", "bananas", "oranges"]
  4. var myArray = [3]

它们有什么区别,首选方式是什么?

根据 this website以下两行非常不同:

var badArray = new Array(10); // creates an empty Array that's sized for 10 elements
var goodArray= [10];          // creates an Array with 10 as the first element

As you can see these two lines do two very different things. If you had wanted to add more than one item then badArray would be initialized correctly since Javascript would then be smart enough to know that you were initializing the array instead of stating how many elements you wanted to add.

作者想说的是,Array(10) 创建了一个恰好包含 10 个元素的数组,而 [10] 创建了一个未定义大小的数组,其中包含第 0 个元素10岁?或者这是什么意思?

最佳答案

在您的第一个示例中,您创建了一个空数组,与 var x = [] 相同。第二个示例创建了一个大小为 3 的数组(所有元素 undefined)。第 3 个和第 4 个示例相同,它们都使用这些元素创建数组。

使用 new Array() 时要小心。

var x = new Array(10); // array of size 10, all elements undefined
var y = new Array(10, 5); // array of size 2: [10, 5]

首选方法是使用 [] 语法。

var x = []; // array of size 0
var y = [10] // array of size 1: [1]

var z = []; // array of size 0
z[2] = 12;  // z is now size 3: [undefined, undefined, 12]

关于javascript - 在 JavaScript 中声明数组的方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11403068/

相关文章:

javascript - 如何根据颜色对div进行排序?

javascript - 图表 Js 单击按钮即可显示更多数据集

javascript - 居中元素?

java - 打印 Java 数组的最简单方法是什么?

python - 如何将字符串数组转换为字符串数组?

javascript - 如何使用Coffeescript和shellJS编写可执行的shell脚本?

javascript - Jquery Sliding Div 只工作一次

c - 将数组作为函数指针传递并使用 sizeof() 运算符

php - 在 mysql 中使用 php 数组查询

java - 如何获取不重复的随机字符串值?