我知道你可以将数组传递给Function.prototype.apply
,但最近我遇到了这段代码(它被写成一种创建由undefined
值而不是空槽或洞的数组的好方法);
var a = Array.apply( null, { length: 3 } );
我不理解这段代码从第二个参数开始是如何工作的。是否有其他语法可以用来更清楚地说明正在发生的事情?当我们将实际对象传递给 apply
时,发生了什么?我们能否将此对象转换为数组以获得此结果?我尝试了许多方法来做到这一点,但没有成功。
new Array(3)
是一样的。 - Akxe