我在哪里目前有控制台日志,countdown
似乎从10倒数到1(这是有道理的),但在此之后,way
似乎增加了15次到最终结果countdown
9次,但为了这种事情发生,我想象一下,在每个countdown
循环之后,way
被调用,但是每个都跟踪它自己的value
?任何关于此逻辑的原因和时间的澄清将有所帮助 - 谢谢!这个递归函数调用的逻辑是什么?
var countdown = function(value) {
value = value - 1;
if (value == 0) {
return value;
}
console.log("loop 1 " + value);
return way(countdown(value));
};
function way(value) {
value = value + 15;
console.log(value);
return value;
}
countdown(10);
清楚'value'是*参数*这两个函数。这不是全球价值。 – Pointy
你可以发布控制台输出来澄清? – Stefan
用调试器运行此操作,以及发生了什么。特别关注'价值'的位置。如果没有,请输入一些有用的'console.log'语句来跟踪执行流程。 – Prune