看以下这段代码. var re = /^d+$/g; var str = "3333"; var s1 = re.test(str) ; //显示True var s2 ; for(var i=0;i<1;i++)...{ s2 = re.test(str); } alert("s1=" + s1 + " s2=" + s2); //显示s1=true s2=false 正则表达式变量定义为全局,在for循环内执行会不正常,for循环外执行为正常。 调试了半天才得出的结论,郁闷……