【问题标题】:I'm confused by execution of switch statement in javascript [closed]我对在javascript中执行switch语句感到困惑[关闭]
【发布时间】:2021-04-05 16:25:43
【问题描述】:

我对下面的代码有点困惑,它正在将第 3 步打印到控制台

let switch; 
switch('abc'){
  case('abc'): 
    switch = 'step 1';
  case('def'): 
    switch = 'step 2';
  default: 
    switch = 'step 3';
}
console.log(switch);

【问题讨论】:

标签: javascript


【解决方案1】:

问题是您缺少阻止其执行后续代码的break 语句

let switch; 
switch('abc'){
  case('abc'): 
    switch = 'step 1';
    break;
  case('def'): 
    switch = 'step 2';
    break;
  default: 
    switch = 'step 3';
}
console.log(switch);

将控制台日志放入 swi9tch,希望能说明这一点

switch ("abc") {
  case "abc":
    console.log("step 1 - no break");
  case "def":
    console.log("step 2 - no break");
  default:
    console.log("step 3 - no break");
}

switch ("abc") {
  case "abc":
    console.log("step 1");
    break;
  case "def":
    console.log("step 2");
    break;
  default:
    console.log("step 3");
}

【讨论】:

    【解决方案2】:

    添加break后;声明,此代码仍然无效。您还需要添加诸如用户输入之类的内容,以使 switch 确定它将运行哪种情况。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-24
      相关资源
      最近更新 更多