繁体   English   中英

str.replace无法按预期运行

[英]str.replace not functioning as expected

我目前正在编写一个函数来检查url参数是否在url中。 如果存在,则将其删除;如果尚未存在,则将其添加。 本质上是在单击按钮时切换参数。 这是我到目前为止所拥有的。

     var value1 = $(this).attr("value");
     var collectionUrl = window.location.href; 
      if (collectionUrl.includes($(this).attr("value")))  {
          console.log("removing:   "  + $(this).attr("value"));
          collectionUrl.replace(value1,"");
      }
      else {
          console.log("adding:   "  + $(this).attr("value"));
          collectionUrl = collectionUrl + $(this).attr("value")+"/";
        }
    ajaxLoadPage(collectionUrl);

缺少该值时,将按预期方式添加该URL。 如果该值已经存在于网址中,则if语句可以正常工作,并输出“ removing:”值

但是,不会删除url中的值。 我觉得我想念什么。

调用"abc".replace("b","D")不会更改“ abc”,但会返回新字符串“ aDc”,因此您需要将结果存储在collectionUrl

因此像这样调用它collectionUrl = collectionUrl.replace(value1,"");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM