搜索

首页  >  问答  >  正文

javascript - 正则表达式 g的问题

加g的时候是第一次点击按钮,返回true,再点击按钮,返回false,是为什么?
不加 g的时候返回的结果是正确的。

        window.onload=function(){
            var aInput=document.getElementsByTagName('input');
            var re = /^1\d{10}$/;
            //var re== /^1\d{10}$/g;
            aInput[1].onclick=function(){
                if(re.test(aInput[0].value)){
                    console.log('是电话号码');
                }else{
                    console.log('不是电话号码');
                }
            }
        }
黄舟黄舟2796 天前547

全部回复(2)我来回复

  • 高洛峰

    高洛峰2017-05-19 10:47:29

    http://blog.csdn.net/leolu007...

    回复
    0
  • ringa_lee

    ringa_lee2017-05-19 10:47:29

    /g是全局匹配的意思,一般需要使用正则表达式替换所有匹配处的时候才用这个参数.
    然而!
    你的正则加上/g也是可以正确匹配以1开头的11位数字的,为什么会false的原因我想应该是你的代码里面多了一个等号..........

    //var re== /^1\d{10}$/g;

    使用控制台执行这行JS:

    回复
    0
  • 取消回复