【发布时间】:2011-10-25 17:49:45
【问题描述】:
我正在尝试将我的 if 语句管理为 switch 语句来评估正则表达式,但我不知道该怎么做。我尝试了很多可能性,但做不到。看下面的代码,对吗?:
var username = $('input.username'),
phone = $('input.phone'),
numRegex = /^[0-9]/i,
alphaRegex = /^[a-zA-Z]/i,
usernameVal = username.val(),
phoneVal = phone.val();
switch (phoneVal) {
case numRegex.test(phoneVal):
console.log('Only digits please.');
break;
default:
console.log('It\'s all good.');
}
非常感谢。
【问题讨论】:
-
只要这些变量在
switch (false) {范围内 -
我相信 switch 只允许测试一个条件
-
为什么您要构建自己的验证方案,而您可以通过 jQuery validation 之类的方式轻松完成
-
@Emmanuel N:因为这是我公司想要的。
-
但是您想检查测试是否返回
true或false,而不是将它们的返回值(true或false)与phoneVal进行比较。这不是使用switch的方式。看来您需要一个ifs 链(一个if、很多else ifs 和一个else)。
标签: javascript jquery regex switch-statement