我无法解决这个问题:
var x = 1;
while (x == 1) {
}
function changeX(val) {
if (val == 1) {
x = 1;
} else if (val == 0) {
x = 0;
break;
}
}
无论我做什么,我都无法做到这一点。我想要做的是:当我选择“0”或输入或任何东西时,我希望循环停止工作。我必须使用break / continue。
无论我做什么,我都会错误地使用break或浏览器崩溃。
PS。在HTML部分我把
<input type="text" value="1" onchange="changeX(this.value)">
答案 0 :(得分:0)
让您的代码有效:
虽然会阻止浏览器线程。因此,您无法点击。 做:
var x=false;
function react(){
if(x){return;}
//your code
console.log("sth");//e.g.
setTimeout(react,0);
}
react();
现在你可以做你的UI东西了
function changeX(val) {
if (val == 0) {
x = true;
}
}
你真正想要的是什么:
var timer=false;
function input(val){
if(timer){
clearInterval(timer);
timer=false;
}
if(val){
timer=setInterval(function(){
val++;
alert(val);
if(val==10){
clearInterval(timer);
timer=false;
}
}, 1000);
}
<input oninput="input(this.value)">
答案 1 :(得分:0)
<h3>Break Statement</h3>
<script>
let num=0;
while(num<5){
num++;
if((num==3)){
break;
}else{
document.write("num is: "+num+"<BR/>")
}
}
document.write("When if condition is true: while Loop Terminated");
</script>
<h3>Continue Statement</h3>
<script>
let val=0;
while(val<5){
val++;
if(val==3){
// skip the current loop iteration and jump to the next iteration
continue;
}
document.write("val = "+val+"<BR/>");
}
</script>