我想知道检查字符串的最佳方法是什么,例如(邮件、密码等)。
/^...$/i.exec(a)
对比
/^...$/i.test(a)
- 执行返回值
- 测试为真
测试:
// 1° way
var mail = req.body.mail;
if(check(mail)){
执行:
// 1° way
var mail = req.body.mail;
if(check(mail)){
// 2° way
var mail = check(req.body.mail);
if(mail){
执行还是测试?以及什么数字(如果执行,则为 1° 或 2°)
解决方案
test更适合这种情况。
- 它肯定会更快。
但最重要的
- 测试完成了他的所有工作。虽然exec没有执行,因为可以做更多的事情,但我们不需要。
- 就像Mattias Buelens 所说,使用 isMail() 更合乎逻辑:是电子邮件:是或否。而exec : 是电子邮件:电子邮件或 null -> wtf ?哈哈