js如何获取当前网站的协议、域名、端口号

js获取当前网站的协议、域名、端口号

在JavaScript中,你可以通过window.location对象来获取当前网站的URL信息,包括协议(protocol)、域名(hostname)、端口号(port)等。

以下是如何分别获取这些信息的示例:

1. 获取协议(Protocol)

协议部分可以通过window.location.protocol获取,这将返回包括冒号(:)的协议名称,例如http:或https:。

var protocol = window.location.protocol;
console.log(protocol); // 输出:http: 或 https:

2. 获取域名(Hostname)

域名部分可以通过window.location.hostname获取,这将返回不包括端口号的域名。

var hostname = window.location.hostname;
console.log(hostname); // 输出:例如 example.com

3. 获取端口号(Port)

端口号可以通过window.location.port获取。

如果URL中未明确指定端口号,并且协议是http,则端口号默认为80;如果协议是https,则端口号默认为443。

然而,window.location.port在这些情况下将不会返回默认值,而是返回空字符串””。

var port = window.location.port;
console.log(port); // 输出:例如 8080 或 ""(如果未指定且为默认端口)

示例:组合URL部分

如果你想要将协议、域名和端口号(如果非默认)组合起来,你可以这样做:

var protocol = window.location.protocol;
var hostname = window.location.hostname;
var port = window.location.port ? ':' + window.location.port : ''; // 如果端口号不是默认,则添加':'和端口号
var baseUrl = protocol + '//' + hostname + port;
console.log(baseUrl); // 输出:例如 https://example.com:8080 或 http://example.com

请注意:

  • 这个组合假设你想要一个可以用于构造新URL的基础URL。
  • 如果你的目标是检查或分析当前页面的URL,则直接访问window.location的各个属性通常就足够了。

4. 获取协议域名端口号一起(Origin)

端口号可以通过window.location.origin获取。

var origin = window.location.origin;
console.log(origin); // 输出:https://example.com:8080

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

来源链接:https://www.jb51.net/javascript/334792dm0.htm

© 版权声明
THE END
支持一下吧
点赞13 分享
评论 抢沙发
头像
请文明发言!
提交
头像

昵称

取消
昵称表情代码快捷回复

    暂无评论内容