【发布时间】:2013-08-16 06:58:57
【问题描述】:
有没有办法在单个 Javascript switch 语句中创建多个案例?
在我的代码中,我通过 jQuery 接收字段的值。
是否有可能一种情况检查字符串正则表达式,另一种情况检查相同变量的数量?
我的想法是:
var field = $(this).val();
var msg;
switch (field)
{
case field.test('Yes'):
msg = "FOO\n";
break;
case 10:
msg = "BAR\n";
break;
}
虽然我在这里看到了:Switch statement for string matching in JavaScript
在字符串上使用 switch 的方法是向 switch 语句发送一个“真”值。
实现这一目标的最简洁(也是正确!)的方法是什么?
【问题讨论】:
-
在我看来,
if/else将是最简洁和正确的方法,尤其是在只有两种情况的情况下。如果还有其他情况,则根据需要添加一些else if分支,或者首先在switch中包含所有数字情况,然后在default中进行正则表达式测试。你可以使用switch(true),然后为每个case设置你喜欢的任何条件,我自己确实这样做了,但它只会在出现失败的情况下使代码更短... -
目前有三个,但未来可能会更多,我希望代码易于扩展,如果/否则不是这样......
标签: javascript jquery regex switch-statement