JavaScript 获取 URL 各组成部分详解

作者:函数茶馆时间:2026-10-21 18:35:15浏览:525

本文详细解析如何利用 JavaScript 的 location 对象获取 URL 的完整地址、域名、协议、端口、路径、哈希值及查询参数。通过具体代码示例,展示如何提取问号后的参数及等号后的值,帮助开发者快速掌握前端 URL 信息处理技巧。

获取完整 URL

以“http://www.cnblogs.com/wuxibolgs329/p/6188619.html#flag?test=12345”为例,接下来将介绍如何获取该 URL 的各个组成部分。

1、获取页面完整的url


var a=location.href;
console.log(a); // “http://www.cnblogs.com/wuxibolgs329/p/5261577.html#flag?test=12345”

获取域名、协议与端口

2、获取页面的域名


var host = window.location.host; //www.cnblogs.com
var host2 = document.domain; //www.cnblogs.com
var a = location.hostname;  //www.cnblogs.com

3、获取url协议


var a=location.protocol;
console.log(a); //http:

4、获取端口


var a=location.port;
console.log(a);

获取页面路径与协议设置

5、获取页面路径


var a=location.pathname;
console.log(a);

6、设置或获取 URL 的协议部分

var a = location.protocol;

获取哈希与查询参数

7、获取#后的部分


var a=window.location.hash; 
var b=a.substr(1); 
console.log(b); // flag?test=12345

8、获取 href 属性中跟在问号?后面的部分


// 此时案例地址变为“http://www.cnblogs.com/wuxibolgs329/p/5261577.html?test=12345”。得到 test=12345
var a=location.search;
var b=a.substr(1);
console.log(b); 
//如果案例依旧是“http://www.cnblogs.com/wuxibolgs329/p/5261577.html#flag?test=12345”,则需下面的写法,得到 test=12345
var a=location.href;
var b=a.substr(a.lastIndexOf('?')+1);
console.log(b);

9、获取 = 号后面的部分


var a=location.href;
var b=a.substring(a.lastIndexOf('=')+1);
console.log(b); // 12345

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持本站!

作者最新文章