https://jsfiddle.net/qbge5qse/47/
使用此函数的递归返回值。功能中只允许一个参数。此外,不允许在函数之外的全局变量。
答案 0 :(得分:0)
使用带有两个参数的代码,假设它是正确的,就像这样作弊
function f(x) {
function inner(n, i) {
if (n>0) {
return (( n / (1 + i)) + inner(n-1, i+1) );
}
else {
return 0;
}
}
return inner(x);
}
或者你当然可以这样做
function test(o) {
if (typeof o == 'number') {
o = { i: 0, n: o };
}
if (o.n > 0) {
return ((o.n / (1 + o.i)) + test({ n: o.n - 1, i: o.i + 1 }));
} else {
return 0;
}
}