gpt4 book ai didi

javascript - 从 URL 末尾删除尾随 '/'

转载 作者:行者123 更新时间:2023-11-27 22:53:32 25 4
gpt4 key购买 nike

所以我有以下一些在某种程度上有效的代码。

var url = window.location.protocol + "//" + window.location.host + window.location.pathname;

var sanitized = url
.replace(/^https\:\/\//, '') // remove the leading http:// (temporarily)
.replace(/\/+/g, '/') // replace consecutive slashes with a single slash
.replace(/\/+$/, ''); // remove trailing slashes

url = 'https://' + sanitized;

window.onload = function urlChange(){
location.replace(url);
}

唯一的问题是,一旦 url 发生更改,页面就会不断重新加载,就像无限循环一样。

有什么想法吗?

谢谢!

最佳答案

您需要检查网址是否实际更改,并且仅在更改后才替换其位置。您可能还应该使用 window.url,而不是根据协议(protocol)、主机和路径名手动构建它。

var sanitized = window.url
.replace(/^https\:\/\//, '') // remove the leading http:// (temporarily)
.replace(/\/+/g, '/') // replace consecutive slashes with a single slash
.replace(/\/+$/, ''); // remove trailing slashes

sanitized = 'https://' + sanitized; // add https to the front

window.onload = function urlChange() {
if (window.url !== sanitized) {
location.replace(sanitized);
}
}

关于javascript - 从 URL 末尾删除尾随 '/',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37832681/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com