首页 > 解决方案 > 'empty x 2' 数组和 [undefined, undefined] 有什么区别?

问题描述

如果我在浏览器控制台中创建以下常量:

const myArray = Array(2);

这将输出以下内容:

(2) [empty × 2]

当我以下列方式使用扩展运算符时:

const myUndefinedArray = [...myArray]

然后控制台返回:

(2) [undefined, undefined]

在这两种情况下,它都说长度是两个。每个选项的用例是什么?“空”有什么具体含义吗?

标签: javascriptarrays

解决方案


const myArray = Array(2);
console.log(myArray)

您在这里创建了一个长度为 2 的空值,这就是为什么您得到一个具有 2x 空值的数组的输出,因为您没有在创建的数组中放入任何值。

const myArray = Array(2);
const myUndefinedArray = [...myArray]
console.log(myUndefinedArray)

你来到这里undefined是因为你试图myUndefinedArray使用不存在的值创建一个数组。


推荐阅读