交换机外的变量声明 - 到DRY代码

时间:2018-04-11 10:17:57

标签: javascript switch-statement

让我们举个例子:

let name;

switch (name) {

  case "John":
    personsName = "little John";
  break;

  case "Bob":
    personsName = "Bob almighty";
  break;

}

我可以从每个案例中取出personName =,以某种方式将其置于顶部并仅留下分配吗?

所以它想:

case "Bob":
  "Bob almighty";
break;

否则有50个案例我将不得不重复personName =次文字50次。如果不可能,为什么?

1 个答案:

答案 0 :(得分:4)

创建namepersonName

的地图
var map = {
  "John" :  "little John",
  "Bob" : "Bob almighty"
}

现在将您的personName设为

var personName = map[name];

无需使用switch case