javascript - 如何在 JavaScript 中提取 URL 的主机名部分

标签 javascript hostname

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

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

只提取主机部分:

aaa.bbb.ccc.com

必须有一个 JavaScript 函数可以可靠地执行此操作,但我找不到它。

最佳答案

假设您有一个带有以下地址的页面:http://sub.domain.com/virtualPath/page.htm。在页面代码中使用以下代码来实现这些结果:

  • window.location.host : 你会得到 sub.domain.com:8080sub.domain.com:80
  • window.location.hostname :你会得到 sub.domain.com
  • window.location.protocol : 你会得到 http:
  • window.location.port : 你会得到 808080
  • window.location.pathname :你会得到 /virtualPath
  • window.location.origin : 你会得到 http://sub.domain.com *****

更新:关于.origin

***** 作为 ref状态,window.location.origin 的浏览器兼容性尚不清楚。我在 chrome 中检查了它,如果端口不是 80,它返回 http://sub.domain.com:porthttp://sub.domain.com 如果端口是 80。

特别感谢 @torazaburo 向我提及这一点。

关于javascript - 如何在 JavaScript 中提取 URL 的主机名部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1368264/

相关文章:

ubuntu - 无法在 Linode Ubuntu 10.04 Lucid Lynx 上设置主机名

cocoa - 如何使用 cocoa/obj-c 从挂载目录获取服务器主机名?

javascript - 类型错误 : Cannot read property 'find' of undefined with mongoose

javascript - Knex.js 与 Joi 绑定(bind)

java - 从通过代理路由的请求中获取 IP 和主机名

Java:验证 "host:port"并将其转换为 InetSocketAddress 的常用方法?

linux - 发送邮件时主机名查找失败

javascript - 从 promise 对象(服务器端)获取值到客户端 index.html

javascript - 延迟除特定项目外的所有项目

javascript - 如何衡量 promise 的执行时间?