为什么 `new Array(...[ 7 ])` 会生成 `Array(7) [ <7 个空槽> ]`?

ara*_*ara 1 javascript arrays spread-syntax

为什么此代码打印Array(7) [ <7 empty slots> ](或 7 次的数组undefined)而不是包含单个元素的数组7

const a = [ 7 ];

console.log(new Array(...a));
Run Code Online (Sandbox Code Playgroud)

小智 5

new Array(...a) 与 new Array(7) 相同,它将创建一个包含 7 个未定义点的空数组。