javascript - 如果执行了 "if...else if"中的任何一个,则运行代码?

标签 javascript if-statement

如果执行了任何 if + else if + else if... ,我想运行代码:

if(){
    ...
}else if(){
    ...
}else if(){
    ...
}
//run something if ANY of the above was executed

我可以添加我想要在每个 ifelse if 上执行的行,但这会是太多垃圾邮件。

我所做的如下:

temp=i;//store a copy
i=-1;//make the change

if(){
    ...
}else if(){
    ...
}else if(){
    ...
}else{
    i=temp//restore if none was executed
}

无论发生什么情况,上面都会应用更改,并使用 else 撤消此更改。这工作正常,但我真的很担心这段代码的可读性

我还缺少其他更具可读性的替代方案吗?

最佳答案

好吧,你总是可以做到

any=true;
if (...) {
} else if (...) {
} else if (...) {
} else {
  any = false;
  // or: return, if you are inside a function!
}
if (any) {
  // one of the ifs was executed.
}

如果你使用函数来包装它,你也可以在最后的 else 中return。这可能是最干净的版本。

关于javascript - 如果执行了 "if...else if"中的任何一个,则运行代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10132724/

相关文章:

javascript - 需要将ajax响应分配给div

Javascript If/Else 语句更改 img src

c# - if( null == this.somevariable ) 和 if( this.somevariable == null) 有什么区别

java - 使用 for 循环和 if 语句搜索帐户

java - Java 温度计算器

ios - objective-c :在创建字符串并将其分配给字典键之前,一种更干净的方法来检查字符串是否不为空?

javascript - 通过多个复选框显示/隐藏 DIV

Javascript 闭包和前置后函数处理程序

javascript - 拨动开关状态问题

javascript - 检查计算岛屿的异常情况