我想在匹配时中断执行 特定条件。尝试过break、goto,均无效。请指教。
if (condition 1){
print("1");
}
if (condition 2){
print("2");
}
if (condition 3){
print("3");
}
谢谢。
最佳答案
我对你的断言 switch
感到非常困惑和else...if
do“不适合[您的]用例”——这些是Javascript为您正在寻找的情况明确提供的构造——评估一系列条件并在匹配条件时中断。从这一点来看,Lahiru Ashan 的答案是有效的,对您问题的评论也是有效的解决方案。
如果由于某些奇怪原因您确实无法使用if..else
,我能想到的唯一其他方法或switch
在您的代码中,将所有条件放在一个函数中,并使用 return
语句短路并在完成后退出该函数。像这样的事情:
function evaluateInput(inputVal) {
if (inputVal === 1){
print("1");
return;
}
if (inputVal === 2){
print("2");
return;
}
if (inputVal === 3){
print("3");
return;
}
}
x = 3
evaluateInput(x);
但是,我确实认为您需要重新审视其他潜在的解决方案,因为它们是实现您所寻求的目标的有效且更为传统的方法。 if..else
解决方案简单明了:
x = 3
if (x === 1){
print("1");
} else if (x === 2){
print("2");
} else if (x === 3){
print("3");
}
如果您要评估一长串条件,并且这看起来开销太大,那么 switch
声明是一个很好的选择,在这种情况下,Lahiru Ashan 的解决方案是一个有效的竞争者。
我怀疑 if..else
或switch
应该对您的场景有效 - 如果不是,也许您应该用代码中的示例更清楚地解释为什么,以帮助 StackOverflow 社区评估您的问题并帮助您找到解决方案解决方案。
关于javascript - 如何在 JavaScript 中中断多个 if 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40144971/