相关疑难解决方法(0)

如何简化多个if语句javascript?

我有多个条件要检查。我必须根据条件添加图标,然后我需要根据其他一些条件更改背景颜色。我正在使用 if 语句。这是我的代码。

JSON:

{
  "date": "2017-05-12",  
  "a": false,
  "b": true,
  "c": true,  
  "d": false,
  "status": "active"
}
Run Code Online (Sandbox Code Playgroud)

Javascript:

 if (date != -1) {
  //do something
  if (a) {
    //Add icon a
  }
  if (b) {
    //Add icon b
  }
  if (c) {
    //Add icon c
  }
  if (d) {
    //Add icon d
  }
}

if(status == "active"){
  //Background Green
}
else if (status == "onhold"){
  //Background Yellow
}
else if (status == "inactive"){
  //Background Red
}
else{
  //Backgeound Grey …
Run Code Online (Sandbox Code Playgroud)

javascript if-statement conditional-statements

2
推荐指数
2
解决办法
3万
查看次数

缩短long if/else语句的最简单方法是什么?

下面的全功能(简化)示例.

假设我有一个可以转换为全名的10种可能缩写的列表.
它不够大,我想在数据库中进行查找.
什么是最简单的if-else解决方案?

这是我想象中的解决方案:从逻辑上讲,比较两个数组是有意义的,例如:
var bar = [foo == sf, foo == ny, foo == la] ? [San Francisco, New York, Los Angeles] : "";

否则,我有一个功能正常的解决方案.我可以做得更好吗?

编辑:理想的解决方案是一行代码.我不想使用switch语句,因为写入比if/else更有效.

bar = "LA";
sf = "SF";
ny = "NY";
la = "LA";
{
if (bar == sf) {
foo = "San Francisco";
} else if (bar == ny) {
foo = "New York";
} else if (bar == la) {
foo = "Los Angeles";
}
document.getElementById("test").innerHTML = foo;
}
Run Code Online (Sandbox Code Playgroud)
<div id="test">Result</div>
Run Code Online (Sandbox Code Playgroud)

javascript if-statement

0
推荐指数
1
解决办法
205
查看次数