当存在'g'标志时,正则表达式的测试函数返回无效值。
示例:
var regExpArh = /(\.rar|\.zip|\.7z)$/gi;
var s = "55.7z";
regExpArh.test(s); // return true
regExpArh.test(s); // return false
regExpArh.test(s); // return true
regExpArh.test(s); // return false
为什么?
答案 0 :(得分:0)
如果正则表达式设置了全局标志,test()将提升正则表达式的lastIndex。随后使用test()将在lastIndex指定的str的子字符串处开始搜索(exec()也将使lastIndex属性前进。)