有没有一个简单的方法可以从一个完整的URL开始:

document.location.href = "http://aaa.bbb.ccc.com/asdf/asdf/sadf.aspx?blah"

只提取主部分:

aaa.bbb.ccc.com

肯定有JavaScript函数能可靠地做到这一点,但我找不到。


当前回答

我想具体说明一些事情。如果有人想要得到完整的url路径像我需要的,可以使用:

var fullUrl = window.location.protocol + "//" + window.location.hostname + window.location.pathname;

其他回答

使用文档。位置对象及其主机或主机名属性。

alert(document.location.hostname); // alerts "stackoverflow.com"

让我们假设你有这样的url路径:

http://localhost:4200/landing?query=1#2

因此,你可以通过位置值为自己服务,如下所示:

window.location.hash: "#2"
​
window.location.host: "localhost:4200"
​
window.location.hostname: "localhost"
​
window.location.href: "http://localhost:4200/landing?query=1#2"
​
window.location.origin: "http://localhost:4200"
​
window.location.pathname: "/landing"
​
window.location.port: "4200"
​
window.location.protocol: "http:"

window.location.search: "?query=1"

现在我们可以得出结论,你在寻找:

window.location.hostname

你可以连接位置协议和主机:

var root = location.protocol + '//' + location.host;

对于url,比如'http://stackoverflow.com/questions'它会返回'http://stackoverflow.com'

use

window.location.origin

对于:“http://aaa.bbb.ccc.ddd.com/sadf.aspx?blah”

你会得到:http://aaa.bbb.ccc.ddd.com/

我想具体说明一些事情。如果有人想要得到完整的url路径像我需要的,可以使用:

var fullUrl = window.location.protocol + "//" + window.location.hostname + window.location.pathname;