例如我有这个:
for (i = 0; i < wLength; i++) {
if(dummy === word.charAt(i)) {
letters[i] = dummy;
//cs == 0 ? score1++ : score2++
} else {
fail++
break;
}
}
它会'fail'
增加'wLength'
次,但我只想让它在每次迭代时递增一次(如果'dummy'
为假)并且不使用break(因为它会离开整个循环。)
答案 0 :(得分:0)
您可以尝试使用&#34;继续&#34;。它会在不离开的情况下进入下一轮循环。
for(i = 0; i < wLength; i++){
if(dummy === word.charAt(i)) {
letters[i] = dummy;
//cs == 0 ? score1++ : score2++
}
else {
fail++;
continue;
}
}
答案 1 :(得分:0)
你总是可以使用“while”循环而不是“for”I.E。:
var n = 0;
var x = 0;
while (n < 3) {
n++;
x += n;
}
答案 2 :(得分:0)
你有一个语法错误fail++
(其中是分号)这就是为什么它在条件失败后停止
for(i = 0; i < wLength; i++){
if(dummy === word.charAt(i)) {
letters[i] = dummy;
//cs == 0 ? score1++ : score2++
}
else {
fail++;
}
}
答案 3 :(得分:0)
您可以使用标志变量来满足您的要求
let flag = true
for (i = 0; i < wLength; i++) {
if(dummy === word.charAt(i)) {
letters[i] = dummy;
//cs == 0 ? score1++ : score2++
}else if (flag) {
flag = false
}
}
if (!flag) fail+=1