zoukankan      html  css  js  c++  java
  • JavaScript(js)的replace问题的解决

    我是前端的门外汉,js我用得比较少。今天意外发现js自带的replace “居然”只替换1处,而其它的许多许多语言都是替换全部的。
    你可能会说,切,我早就知道。高手请绕道。
    你可能会说,用js的正则就可以解决这个问题。对,没错,但敝人有“不轻易使用正则”的癖好。
    于是想出一个办法,既然js你只帮我做一次,我就循环让你做多次,代码别人都写好了:
    function ReplaceAll(str, sptr, sptr1){
       while (str.indexOf(sptr) >= 0){
          str = str.replace(sptr, sptr1);
       }
       return str;
    }
    

    好高兴,找到了解决办法。但是贴这段代码的上面写着“我觉得不靠谱”,下面又举了一个例子: ReplaceAll(a, 'b', 'bc') 会死循环。我汗!不用运行我都能知道这样传肯定会死循环。失望。后来,我自己想了一个办法:

    function replaceAll(str, sptr, sptr1) {
        var ps = str.split(sptr);
        var s2 = ps.join(sptr1);
        return s2;
    }
    

    贴上来供各位高手看看这种办法是否有缺陷。

    我就当作是写备忘录。

  • 相关阅读:
    面向对象编程-介绍(python3入门)
    课堂作业03
    软件工程个人作业04
    团队介绍
    学习进度条
    课堂作业02
    学习进度条
    软件工程个人作业03
    课堂作业01
    软件工程个人作业02
  • 原文地址:https://www.cnblogs.com/BillySir/p/4566718.html
Copyright © 2011-2022 走看看