如何使这个if语句缩短? [英] How to make this if statement shorter?

查看:191
本文介绍了如何使这个if语句缩短?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我可以缩短此声明吗?

if(abc=='value1' || abc=='value2' || abc=='value3') {//do something}

使它看起来类似于这个:

to make it look similar to this:

if(abc=='value1' || 'value2' || 'value3'){//do something}

谢谢。

推荐答案

你有几个选择:


  1. 保持原样;

  2. 使用关联数组/对象;

  3. 使用 切换 声明。

  1. Leave it as it is;
  2. Use an associative array/object;
  3. Use a switch statement.

第二种形式是无效的Javascript语法。

The second form is not valid Javascript syntax.

(2)类似于:

var abcOptions = {
  "value1" : true,
  "value2" : true,
  "value3" : true
};
if (abcOptions[abc]) {
  ...
}

(3)是:

switch (abc) {
  case "value1":
    ...
    break;
  case "value2":
    ...
    break;
  case "value3":
    ...
    break;
}

从可读性的角度来看,我个人并不是很喜欢这个但这是一个合理的方法,有很多价值。

Personally I'm not a huge fan of this from a readability point of view but it's a reasonable approach with a large number of values.

我不一定推荐这个,但在某些情况下它可能是一种选择。如果你只处理三个值坚持:

I don't necessarily recommend this but it might be an option in certain circumstances. If you're only dealing with three values stick with:

if (abc == "value1" || abc == "value2" || abc == "value3") {
  ...
}

因为它更具可读性。

这篇关于如何使这个if语句缩短?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆