之前看资料说
1.对于表达式对象的exec方法,不加入g,则只返回第一个匹配,无论执行多少次均是如此,如果加入g,则第一次执行也返回第一个匹配,再执行返回第二个匹配,依次类推
2.对于表达式对象的test方法,加入g与不加上g没有什么区别
// ...
但是今天实际执行过程中发现是有问题的?
之前看资料说
1.对于表达式对象的exec方法,不加入g,则只返回第一个匹配,无论执行多少次均是如此,如果加入g,则第一次执行也返回第一个匹配,再执行返回第二个匹配,依次类推
2.对于表达式对象的test方法,加入g与不加上g没有什么区别
// ...
但是今天实际执行过程中发现是有问题的?
2.对于表达式对象的test方法,加入g与不加上g没有什么区别
这种说法应该是有语境的,一般使用test
的场景是直接使用正则表达式字面量:
/abc/.test('abcd');
/abc/.test('efg');
这种情况下“加入g与不加上g没有什么区别”。但功能上加入g与不加上g是有区别的,见JS-RegExp函数
8 回答4.5k 阅读✓ 已解决
6 回答3k 阅读✓ 已解决
5 回答2.6k 阅读✓ 已解决
6 回答2.1k 阅读
5 回答6.2k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
3 回答2.4k 阅读
请阅读参考资料
https://developer.mozilla.org/zh-cn/docs/web/javascript/reference/global_objects/regexp/test#当设置全局标志的正则使用test