首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何缩短我的条件语句

如何缩短我的条件语句
EN

Stack Overflow用户
提问于 2013-08-21 08:30:41
回答 12查看 21.7K关注 0票数 154

我有一个非常长的条件语句,如下所示:

代码语言:javascript
复制
if(test.type == 'itema' || test.type == 'itemb' || test.type == 'itemc' || test.type == 'itemd'){
    // do something.
}

我想知道我是否可以将这个表达式/语句重构为更简洁的形式。

有关于如何实现这一点的想法吗?

EN

回答 12

Stack Overflow用户

发布于 2013-08-21 08:36:38

您可以将switch语句与fall thru一起使用:

代码语言:javascript
复制
switch (test.type) {

  case "itema":
  case "itemb":
  case "itemc":
  case "itemd":
    // do something
}
票数 242
EN

Stack Overflow用户

发布于 2013-08-21 09:00:42

如果您正在与字符串进行比较,并且存在模式,请考虑使用正则表达式。

否则,我怀疑试图缩短它只会混淆你的代码。考虑简单地对行进行换行以使其更美观。

代码语言:javascript
复制
if (test.type == 'itema' ||
    test.type == 'itemb' ||
    test.type == 'itemc' ||
    test.type == 'itemd') {
    do something.
}
票数 32
EN

Stack Overflow用户

发布于 2013-08-21 08:44:27

代码语言:javascript
复制
var possibilities = {
  "itema": 1,
  "itemb": 1,
  "itemc": 1,
…};
if (test.type in possibilities) { … }

将对象用作关联数组是一件很常见的事情,但由于JavaScript没有原生集合,因此也可以将对象用作廉价的集合。

票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18347033

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档