正则表达式返回结果为何不同
<script type="text/javascript">
<!--
var re=new RegExp(/^-?\d+$/g);
alert(re.test("22"));
alert(re.test("22"));
alert(re.test("22"));
alert(re.test("22"));
alert(re.test("22"));
//-->
</script>
为何
第一次返回 true
第二次返回 false
第三次返回 true
第四次返回 false
。。。。。。。。。。。。。。。。 正则表达式
[解决办法]
var re=new RegExp('^-?\\d+$');
alert(re.test("22"));
alert(re.test("22"));
alert(re.test("22"));
alert(re.test("22"));
alert(re.test("22"));
var re=/^-?\d+$/;
alert(re.test("22"));
alert(re.test("22"));
alert(re.test("22"));
alert(re.test("22"));
alert(re.test("22"));
<script type="text/javascript">
<!--
var re=new RegExp(/^-?\d+$/g);
alert(re.test("22"));
re.lastIndex = 0;
alert(re.test("22"));
re.lastIndex = 0;
alert(re.test("22"));
re.lastIndex = 0;
alert(re.test("22"));
re.lastIndex = 0;
alert(re.test("22"));
re.lastIndex = 0;
//-->
</script>