-3
我正在浏览eloquentjavascript课程,并且对某些代码有疑问。Javascript无法读取undefined雄辩的属性
问题集是尝试使用reduce函数来压扁数组。下面是我的代码:
console.log(reduce(arrays, function(flat, current) {
for (var f = 0; f < (current.length); f++) {
flat.push(current[f]);
}}, []))
我不断收到错误
TypeError: Cannot read property 'push' of undefined (line 17)
为什么会出现这个问题?我已经将当前设置为一个空数组([]
),那为什么它仍然是未定义的?
为减少函数的代码是
function reduce(array, combine, start) {
var current = start;
for (var i = 0; i < array.length; i++)
current = combine(current, array[i]);
return current;
}
你必须显示的'减少()'函数的代码。 – JJJ
谢谢。我只是把它。 – Pebbles
当然,但我不知道你为什么不会说'return flat.concat(current)'。 –