javascript - 优化嵌套 switch case

标签 javascript jquery switch-statement

由于嵌套 switch case 的可读性不太好,我如何优化我的嵌套 switch case?

switch (code) {
  case 200:
    switch (status) {
      case 'EXISTS':
        $alreadyExistsMessage.show();
        break;
      case 'UPDATED':
        $alreadyExistsMessage.show();
        break;
      case 'ERROR':
        $wrongFormatMessage.show();
        break;
    }
    break;
  case 201:
    redirectOnSuccess(data);
    break;
  default:
    $wrongFormatMessage.show();
    break;
}

最佳答案

我唯一要做的就是将 'UPDATED''EXISTS' 由于同一个 block 而合并:

switch (code) {
  case 200:
    switch (status) {
      case 'EXISTS':
      case 'UPDATED':
        $alreadyExistsMessage.show();
        break;
      case 'ERROR':
        $wrongFormatMessage.show();
        break;
    }
    break;
  case 201:
    redirectOnSuccess(data);
    break;
  default:
    $wrongFormatMessage.show();
    break;
}

关于javascript - 优化嵌套 switch case,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36624021/

相关文章:

jquery - 在 Ajax 应用程序中将数据从 servlet 传递到 javascript 代码?

javascript - 具有不同内容的 JQuery 可重用对话框

c++ - 为什么允许在 switch 语句中声明变量?但不是声明+初始化?

svn - 合并 SVN 存储库

javascript - 使用 jQuery 添加多个(额外的)空格以跨越

javascript - jQuery 切换 - 只显示一个 div

javascript - JavaScript 中的事件处理程序

Java with ajax - ERR_EMPTY_RESPONSE - 服务器处理请求时 Ajax 响应抛出错误

javascript - 在特定时间更改 div 的内容

c - 在 C 中使用 getopt() 和 switch 语句