递归 JavaScript 问题


const sequenceSum = (begin, end) => {
// BEGIN (write your solution here)
if (begin === end) {
return end;
} else if (begin > end) {
return NaN;
}
return end + sequenceSum(end-1);
// END
};
export default sequenceSum;

你好。我不理解上述代码的问题。我有以下错误:

范围错误:超出最大调用堆栈大小

您不会在return end + sequenceSum(end-1)时为函数调用提供第二个参数,导致既没有到达if也没有到达if..else语句,因为没有定义end;而是重复调用return end + sequenceSum(end-1)

最新更新