我正在查看this answer,我偶然发现Array.apply需要填充数组:
var array = Array.apply(null, Array(5)).map(function() { return 0; });
我已经检查过,这实际上不起作用:
var array = Array(5).map(function() { return 0; });
我知道我能做到
var array = Array(5).fill(0);
为了获得与第一种方法相同的结果,我只是想知道为什么它需要带有null作为参数的Array.apply。
答案 0 :(得分:3)
Apply.apply(thisArg,[argsArray]) 有两个参数
<强> thisArg 强>
为乐趣召唤提供的价值。请注意,这可能不是 是方法看到的实际值:如果方法是函数 非严格模式代码,null和undefined将替换为 全局对象和原始值将被装箱。
<强> argsArray 强>
类似于数组的对象,指定有趣的参数 如果不应该提供参数,则调用,或null或undefined 功能。
详细信息visit