【发布时间】:2018-09-25 01:17:18
【问题描述】:
我正在尝试编写一个在 JavaScript 中实现 foldl 的函数。我正在尝试在函数中使用递归,但无法实现它。
var foldl = function(f, acc, array) {
if (array.length == 0) {
return acc;
} else {
return f(array[0], foldl(f, acc, array.slice(-1)));
}
}
console.log(foldl(function(x, y) {
return x + y
}, 0, [1, 2, 3]));
console.log(foldl(function(x,y){return x+y}, 0, [1,2,3]));
错误信息..
RangeError: Maximum call stack size exceeded
【问题讨论】:
标签: javascript recursion functional-programming fold