Javascript 从url中删除参数

Javascript 从url中删除参数,javascript,url,parameters,Javascript,Url,Parameters,我真的不懂的语法。替换:D有人能帮我修改代码吗?现在它只从URL中删除&chat=1,但我需要它删除从&chat=1到URL末尾的所有内容。 URL示例: http://xxxxxxx.xx/index.php?menu=1&submenu=1&chat=1&od=3&komu=1 结果我需要的是: http://xxxxxxx.xx/index.php?menu=1&submenu=1 结果我的代码现在在做什么: http://xxxxxxx.xx/

我真的不懂的语法。替换:D有人能帮我修改代码吗?现在它只从URL中删除&chat=1,但我需要它删除从&chat=1到URL末尾的所有内容。 URL示例:

http://xxxxxxx.xx/index.php?menu=1&submenu=1&chat=1&od=3&komu=1
结果我需要的是:

http://xxxxxxx.xx/index.php?menu=1&submenu=1
结果我的代码现在在做什么:

http://xxxxxxx.xx/index.php?menu=1&submenu=1&od=3&komu=1
编码我现在使用的代码:

location.href=location.href.replace(/&?chat=([^&]$|[^&]*)/i, "");

Thx需要帮助,对不起我的英语:)

您正在使用正则表达式作为替换的一部分,根据您的需要,此表达式似乎更简单,适合您的需要:

&?chat=.*
正则表达式中的

  • 表示可选,因此字符串中可能存在或不存在
    &
    是可选的
  • chat=
    这应该在字符串后面加上
  • *
    这基本上意味着字符串中存在0到尽可能多的字符

  • i
    结尾处表示不区分大小写

大概是这样的:

"http://xxxxxxx.xx/index.php?menu=1&submenu=1&chat=1&od=3&komu=1".replace(/&?chat=.*/i,"")
//->outputs "http://xxxxxxx.xx/index.php?menu=1&submenu=1"