我正在尝试拆分以下网址:
http://www.store.com/products.aspx/Books/The-happy-donkey
为了得到http://www.store.com/products.aspx
我正在使用 JavaScript window.location.href
,split
但到目前为止还没有成功。
如何才能做到这一点?谢谢!
我正在尝试拆分以下网址:
http://www.store.com/products.aspx/Books/The-happy-donkey
为了得到http://www.store.com/products.aspx
我正在使用 JavaScript window.location.href
,split
但到目前为止还没有成功。
如何才能做到这一点?谢谢!
Try this
var fullurl = "http://www.store.com/products.aspx/Books/The-happy-donkey",
url = fullurl.split(".aspx")[0] + ".aspx";
如果是 url:地址栏中的http://www.store.com/products.aspx/Books/The-happy-donkey
var path = window.location.pathname;
var str = path.split("/");
var url = document.location.protocol + "//" + document.location.hostname + "/" + str[1];
这并不笨拙,是吗?
var url = 'http://www.store.com/products.aspx/Books/The-happy-donkey';
[
url.split('://')[0] + '://',
url.split('://')[1].split('/').slice(0,2).join('/')
].join('')
少一点厚脸皮:
url.split('/').slice(0, 4).join('/')
更好的答案(比拆分)可能是诚实地使用正则表达式,除非您真的需要使用拆分(为了它的乐趣):
var shorterUrl = window.location.href.replace(/\.aspx.+/gi, ".aspx");
这将替换给定 url 的结尾,从 .aspx 开始,只保留 .aspx 部分。
但最重要的是,这不是解决特定问题的好方法(尝试更通用地解决此类问题)。
试试这个,你会得到 url 的对象
console.log(new URL(document.URL));