请看下面的JavaScript代码。我从中删除了一些内容,让您可以专注于问题的关键。
您会注意到我连续两次调用prepPath函数,并传入完全相同的字符串。在Firefox和IE8中,这个函数每次都会弹出true(如预期)。但是,在Chromium 5.0.375.127 (55887) Ubuntu 10.04中,尽管输入保持完全相同,该函数第一次返回true,第二次返回false!
您会注意到我连续两次调用prepPath函数,并传入完全相同的字符串。在Firefox和IE8中,这个函数每次都会弹出true(如预期)。但是,在Chromium 5.0.375.127 (55887) Ubuntu 10.04中,尽管输入保持完全相同,该函数第一次返回true,第二次返回false!
<script type="text/javascript">
function prepPath(str)
{
var regX = /[^\s/"'\\].*[^\s/"'\\]/g;
if(regX.test(str))
{
alert("true: " + str);
}
else
{
alert("false; " + str);
}
}
prepPath("/desktop"); // alerts: true
prepPath("/desktop"); // alerts: false
</script>
为什么在Chromium中第二次返回false?