蛮蛮的手帐 2021-05-15 22:49 采纳率: 33.3%
浏览 40
已采纳

JavaScript高级程序设计(第3版)5.4 RegExp类型 例子有问题

JavaScript高级程序设计(第3版)5.4 RegExp类型

例子里有个问题,

按照书中的内容,第一次打印出来的catastrophe应该只有一个true,其余9次为false,但是实际上打印出了10个true

 var re = null,
       i;

       for(i=0;i<10;i++){
         re =/cat/g;
        console.log(re.test("catastrophe"));
       }

        for(i=0;i<10;i++){
         re = new RegExp("cat","g");
        // re.test("catastrophe")
        console.log(re.test("catastrophe"));
       }

  • 写回答

4条回答 默认 最新

  • CSDN专家-showbo 2021-05-15 23:14
    关注

    你这个由于每次都生成新的正则,所以肯定都是true,第一个示例正则申明应该是放在for循环外吧,这样在外面全局匹配会从下次的位置开始查找,输出是true/false交替的,找不到后又从0位开始,又匹配了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
  • ¥15 android 集成sentry上报时报错。
  • ¥50 win10链接MySQL
  • ¥35 跳过我的世界插件ip验证
  • ¥15 抖音看过的视频,缓存在哪个文件
  • ¥15 自定义损失函数报输入参数的数目不足
  • ¥15 如果我想学习C大家有是的的资料吗
  • ¥15 根据文件名称对文件进行排序
  • ¥15 deploylinux的ubuntu系统无法成功安装使用MySQL❓
  • ¥15 有人会用py或者r画这种图吗