setInterval只在if(){}块内部工作
setInterval only working inside of if(){} block
所以我认为有一些关键的东西可以从我遇到的情况中挑选出来,并希望一些经验可以解释它。
当我运行这段代码时,它不起作用:
t5 = "nikolas"+t4;
setInterval(adds,250);
function adds(){
if (t4 < 100){
t4=t4+1;
}
else{
return;
}
};
this does does work:
t5 = "nikolas"+t4;
adds(t4);
function adds(a){
if (a < 100){
a=a+1;
setInterval(t4=a,250);
}
else{
return;
}
};
TL;DR: setInterval似乎在if块内部工作,而不是在外部。当它工作时,它显示nikolast4,其中t4是一个整数,从1-100"滴答"(例如。strong text nikolas0 nikolas1 nikolas2 nikolas3 nikolas4)
这段代码(由于我正在编程的应用程序)应该每250ms刷新一次(但对整个刷新部分持保留态度,并不是100%确定)。
下面的代码是完全功能的,看起来非常像您的非工作示例。
你可以在这里查看:http://jsbin.com/ofezip/1/edit
所以我猜你对变量的范围有问题。
window.onload = function() {
var myOutput = document.createElement("output");
document.body.appendChild(myOutput);
var t4 = 0;
var helloInterval = setInterval(adds,250);
function adds(){
if (t4 < 10){
t4++;
myOutput.value = "hello " + t4;
}
else {
myOutput.value = "goodbye" ;
clearInterval(helloInterval);
return;
}
}
};
相关文章:
- JS Promises如何在内部工作
- 为什么更改范围获胜'不能在ng if内部工作,而是通过函数调用AngularJS
- Array.prototype.stice.call()的内部工作
- 承诺内部工作
- .htaccess和.htpasswd的内部工作方式
- 对象引用如何在 javascript 内部工作
- 无法获得控制台.log在 CasperJS 中评估内部工作
- Javascript Array Push 代码如何在内部工作
- jQuery Content Switcher (无法使联系人表单在内部工作)
- GetVariable在方法内部工作
- Br在使用Jquery.html()时无法在P内部工作
- yeoman生成器:复制或模板dos'不能在异步回调内部工作
- 了解$.proxy如何在内部工作
- 为什么$(this)选择器在我的函数内部工作,而在外部工作
- canvas.width=canvas.width如何在内部工作
- Javascript事件驱动的内部工作原理
- setInterval只在if(){}块内部工作
- Jquery不能在函数内部工作
- Jquery平滑滚动只在内部工作
- 使用ng-bind-html时,Ng-click不能在控制器内部工作