将Array.push作为参数传递会在JavaScript中引发异常

时间:2018-05-16 21:06:28

标签: javascript arrays

我尝试在JavaScript中合并两个数组。我写了这样的代码:

var array1 = [1, 2];

var array2 = [3, 4];

array2.forEach(function(value) {
   array1.push(value);
});

我知道有更好的方法,例如array1 = array1.concat(array2);,而这个问题与此无关。

我试着像这样最小化上面的代码:

var array1 = [1, 2];

var array2 = [3, 4];

array2.forEach(array1.push);

它是相同的代码,但我没有创建额外的未命名功能。我将array1.push函数直接传递给forEach。 我期待相同的结果,但我得到了这个例外:

Cannot convert undefined or null to object

我不明白为什么我会得到这个例外?

0 个答案:

没有答案