估计要查阅相关文档了,看来ie与ff对于正则滴解释有区别!

解决方案 »

  1.   

    var re=new RegExp("^\\d+$","g");
    用这个
      

  2.   

    - -,抱歉看错了...貌似是RegExp对象的问题吧...估计是实例后的问题...
    JScript   lastIndex 属性
    请参阅
    RegExp 对象的属性 | 正则表达式语法应用于:RegExp 对象
    要求
    版本3
    返回字符位置,它是被查找字符串中下一次成功匹配的开始位置。RegExp.lastIndex
    与该属性有关的对象总是全局 RegExp 对象。说明
    lastIndex 属性是基于零的,也就是说,第一个字符的索引是零。其初始值为 -1,不论何时产生一个成功匹配,它的值都被修改。lastIndex 属性被 RegExp 对象的 exec 和 test 方法,以及 String 对象的 match、replace、和 split 方法修改。下面的规则应用于 lastIndex 的值: 如果还没有匹配,则 lastIndex 被设置为 -1. 
    如果 lastIndex 比字符串的长度大,则 test 和 exec 失败,并且 lastIndex 被设置为 -1。 
    如果 lastIndex 等于字符串的长度,且模式与空字符串匹配,则正则表达式匹配。否则,匹配失败并且 lastIndex 被重置为 -1。 
    否则,lastIndex 被设置为紧接最近的匹配的下一个位置。
      

  3.   

    也许是这个re的资源没释放...
    嘿嘿,貌似的确是这样的...
    <script type="text/ecmascript">
    function a(val) {
    var re = /^\d+$/g;
    return re;
    };
    alert(a(5) === a(5));
    </script>
      

  4.   

    var re=new RegExp("^\\d+$","g");
    用2楼滴方法试过么?!
      

  5.   

    俺用TT,不用FF,帮不上忙,嘿
      

  6.   

    看来FF在相同的作用域下的/.../;是相同的...<script type="text/ecmascript">
    var a = function (val) {
    var global = /^\d+$/g;
    return global;
    };
    var b = function (val) {
    var global = /^\d+$/g;
    return global;
    };
    alert(a() === a());
    alert(a() === b());
    </script>
      

  7.   

    也许是这个re的资源没释放... 但ff为什么没释放呢function a() 
    {
      var re = /^\d+$/g;
      alert(re.lastIndex);
      alert(re.test(2)); 
       var re = /^\d+$/g;
      alert(re.lastIndex);
      alert(re.test(3));

    a(); 
    a(); 
    a();  奇怪啊奇怪
    不明白ff这样处理的原因
      

  8.   


    这个好用...:D,毕竟它创建了不同的对象...
    <script type="text/ecmascript">
    var a = function (string) {
    var global = new RegExp("^\\d+$", "g");
    return global.test(string);
    };
    alert(a(5) && a(6));
    </script>
      

  9.   

    var a = function (val) {
        var global = new   RegExp("^\\d+$","g"); 
        return global;
    };
    var b = function (val) {
        var global = new   RegExp("^\\d+$","g"); 
        return global;
    };
    alert(a() === a());
    alert(a() === b());
      

  10.   


    <script type="text/ecmascript">
    function a() {
    //FF
    var re = /^\d+$/g; //这里是一个RegExp对象
    alert(re.lastIndex);
    alert(re.test(2)); 
    var re = /^\d+$/g; //这里是一个RegExp对象
    alert(re.lastIndex);
    alert(re.test(3));

    a(); //用了那俩对象
    a(); //还用那俩对象
    a(); //还用那俩对象
    //由此得出,FF人家专一:性情中人
    </script>