我在JavaScript中有一个for循环,迭代变量i。在每个迭代步骤中,检查if条件列表。对于每个i,这些条件中只有一个可以是真的(或者没有一个),并且每个条件对于一个i都是正确的。一个非常简单的例子是:
for (i = 1; i <= 10; i++)
{
if (i === 3) {some code ...}
if (i === 7) {some other code ...}
}
很明显,对于4&lt; = i&lt; = 10,条件i === 3将始终失败。有没有办法实现这一点,如果一个条件对某些我来说是真的,这个条件将不再被其他我的检查?这种情况可以用某种方式删除吗?这会使循环更快。
(当然上面的例子没有多大意义,真正的用例要复杂得多。)
提前感谢您的帮助!
答案 0 :(得分:1)
Switch
更适合您想要实现的目标
for (i = 1; i <= 10; i++)
{
switch(i){
case 1:
some code..;
break; //once this is called, the statement will stop
case 3:
some other code..;
break;
}
}
答案 1 :(得分:0)
一旦找到,就可以使用else if语句跳过所有其他条件。
for (i = 1; i <= 10; i++) {
if (i === 3) {some code ...}
else if (i === 7) {some other code ...}
}
在这种情况下,如果i为3,则将跳过其他条件。