2
我不明白为什么javascript RegExp.test()
方法在我每次调用它时都不会返回相同的结果。为什么RegExp.test()不一致?
考虑下面的JavaScript变量
var opener = '<span[^>]*>';
var regexo = new RegExp('^'+opener+'$', "g");
我做了以下内容:
alert(regexo.test('<span class="outer">')); // true
alert(regexo.test('<span class="inner">')); // false
alert(regexo.test('<span class="inner">')); // true
我用同样奇怪的测试结果在Firefox 24.0和IE8。
为什么结果true, false, true
而不是true, true, true
?
就是这样,你让我很快乐! – fluminis
+1'g'用作全局修饰符,删除它可能无法满足任何条件。不知道请纠正我,如果我错了 – Praveen
@ user1671639我很抱歉,但我不明白你的意见,所以我不知道你是否正确。但要清楚的是,我认为当你使用'test'函数时,甚至没有理由使用这个标志。 –