【发布时间】:2009-05-21 19:32:41
【问题描述】:
谁能解释为什么下面 JavaScript 代码中的 alert() 会触发?这似乎是 RegExp.test() 方法中的一个错误,每次运行该方法时都会反转其先前的决定。我用的是IE7。
我找到了一个看起来很可靠的替代品,改用string.search(regex) 方法。但是,我很好奇是否有人对此有所了解。
var styleHasWidthRegex = /\bwidth\s*\:/ig;
var styleText = "WIDTH: 350px";
var result1 = styleHasWidthRegex.test(styleText);
var result2 = !styleHasWidthRegex.test(styleText);
if (result1 == result2) {
alert("This should never happen!");
}
【问题讨论】:
标签: javascript regex