【发布时间】:2014-02-10 12:28:04
【问题描述】:
我了解超出的最大调用堆栈是多少。但是,我的代码有解决方法吗?此外,会有一段时间它最终会停止循环,即 position > counter1。
var a = 0;
var b = 1;
var c;
var counter1 = 1;
var position = 0;
window.onload = function() {
var position = prompt("Please enter the position number.","0");
calc1();
}
function calc1() {
if(position <= counter1) {
c = a+b;
counter1++;
calc2();
}
else {
callResult();
}
}
function calc2() {
if(position <= counter1) {
a = b+c;
counter1++;
calc3();
}
else {
callResult();
}
}
function calc3() {
if(position <= counter1) {
b = c+a;
counter1++;
calc1();
}
else {
callResult();
}
}
function callResult() {
if (position %3 == 1) {
document.getElementById("answer").innerHTML = a;
}
else if (position %3 == 2) {
document.getElementById("answer").innerHTML = b;
}
else {
document.getElementById("answer").innerHTML = c;
}
}
【问题讨论】:
-
如果你是这样缩进你的代码,你如何曾经弄清楚代码流?
-
这不是我通常缩进的方式。它通常是 4 个空格,然后下一个缩进是一个制表符。但是对于这个网站,你需要有 4 个空格来显示它的代码,所以我尽量减少浪费的时间,这样我就可以快速得到答案。但如果它确实影响到人们,我现在就改变它
-
所以,当位置为 calc2 -> calc3 -> calc1?等等……
-
当 position > counter1 时停止。
-
如果它总是更少,例如0?
标签: javascript