我该怎么处理休息;在javascript开关中返回语句后的语句?

时间:2012-09-28 03:23:22

标签: javascript jquery jslint

我有以下内容:

 switch (entity) {
    case "Topic":
        return {
            pk: "0006000",
            param: "?pk=0006000",
            table: "Content",
            success: true
        };
        break;

任何时候都会使用不同的实体重复此操作。所有都以相同的方式编码,返回语句然后中断。

当我运行jslint时,它抱怨说“在返回后破坏”。我应该采用不同的方式对此进行编码吗?

4 个答案:

答案 0 :(得分:1)

  

“我应该采用不同的方式对此进行编码吗?”

是的,删除break。由于函数已经返回,因此它没用。

答案 1 :(得分:1)

break之后您无需使用returnreturn将导致该功能立即存在,return之后的任何代码都不会被执行。

还有其他方式吗?您可以使用对象来保持关系。

var map = {
  'Topic' : {
            pk: "0006000",
            param: "?pk=0006000",
            table: "Content",
            success: true
   },
   // ...
};

return map[entity];

答案 2 :(得分:0)

在这种情况下,break语句永远不会被触发,因为甚至在此之前就返回了值。

你可以安全地删除休息;

但是我觉得将它存储在一个变量后返回它是一个很好的做法

var obj = {};
 switch (entity) {
    case "Topic":
       obj= {
            pk: "0006000",
            param: "?pk=0006000",
            table: "Content",
            success: true
        };
        break;
   }
   return obj;

答案 3 :(得分:0)

你真的不需要休息,但我认为从switch语句中返回并不是一个好习惯。设置变量并在切换后返回。