使用|| 在javascript开关

Cli*_*ote 3 javascript

这段代码可以吗?

switch (rule)
{
   case 'email' || 'valid_email':
    valid = this.validate_email(field);
    break;
}
Run Code Online (Sandbox Code Playgroud)

Jho*_*re- 15

不,这是不可能的,Switch语句不进行算术运算.

但是,您可以使用大小写链接或一堆if:

switch (rule)
{
   case 'email':
   case 'valid_email':
    valid = this.validate_email(field);
    break;
}
Run Code Online (Sandbox Code Playgroud)


And*_*ore 8

关闭,但这将工作:

switch (rule)
{
  case 'email':
  case 'valid_email':
    valid = this.validate_email(field);
    break;
}
Run Code Online (Sandbox Code Playgroud)

它起作用的原因是没有a break;,在switch块内继续执行.