LaP*_*oca 0 javascript ecmascript-6
所以在运行此代码之后
'use strict';
var myNewArray = Array(...[,,]);
console.log(myNewArray);
Run Code Online (Sandbox Code Playgroud)
我明白了
[undefined, undefined]
Run Code Online (Sandbox Code Playgroud)
任何人都可以解释我为什么我只得到2未定义?
您已undefined在数组中提供了值[,,].
最后一项未计算,因为JavaScript将其视为尾随逗号.因此,如果undefined提供,它将被抛出数组.
[ , , ]
// ^^ -> Here is nothing, so array currently has 2 items with `undefined`
Run Code Online (Sandbox Code Playgroud)
如果您在其后面给出一个值,它将被添加到结果数组中.
const myNewArray = Array(...[,,1]);
console.log(myNewArray);Run Code Online (Sandbox Code Playgroud)