首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >JavaScript获取当前url路径

JavaScript获取当前url路径

作者头像
青梅煮码
发布于 2023-01-16 15:01:34
发布于 2023-01-16 15:01:34
3.6K0
举报
文章被收录于专栏:青梅煮码青梅煮码

1、假设当前页完整地址是:https://www.qmblog.cn:8080/Home/Index?id=2&age=18

代码语言:javascript
复制
//获取当前窗口的Url
var url = window.location.href;
//结果:https://www.qmblog.cn:8080/Home/Index?id=2&age=18

//获取当前窗口的主机名
var host = window.location.host;
//结果:https://www.qmblog.cn:8080

//获取当前窗口的端口
var port = window.location.port;
//结果:8080

//获取当前窗口的路径
var pathname = window.location.pathname;
//结果:/Home/Index

//获取当前文档的Url
var URL = document.URL;
//结果:https://www.qmblog.cn:8080/Home/Index?id=2&age=18

//获取参数
var search = window.location.search;
//结果:?id=2&age=18

2、分隔 url 中的参数

代码语言:javascript
复制
var search = window.location.search;
var age = getSearchString('age', search); //结果:18
var id = getSearchString('id', search); //结果:2
//key(需要检索的键) url(传入的需要分割的url地址,例:?id=2&age=18)
function getSearchString(key, Url) {
    var str = Url;
    str = str.substring(1, str.length); // 获取URL中?之后的字符(去掉第一位的问号)
    // 以&分隔字符串,获得类似name=xiaoli这样的元素数组
    var arr = str.split("&");
    var obj = new Object();

    // 将每一个数组元素以=分隔并赋给obj对象 
    for (var i = 0; i < arr.length; i++) {
        var tmp_arr = arr[i].split("=");
        obj[decodeURIComponent(tmp_arr[0])] = decodeURIComponent(tmp_arr[1]);
    }
    return obj[key];
}

3、跳出当前窗口

代码语言:javascript
复制
//跳出当前窗口,打开新窗口
window.open("https://www.kshoulu.com");

4、document与window

document 是一个文档对象,

window  是一个窗口对象,

一个窗口下可以有多个文档对象。

所以一个窗口下只有一个window.location.href,可能有多个document.URL、document.location.href

window.location.href 和 document.location.href 可以被赋值,然后跳转到其它页面,document.URL只能读不能赋值。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-08-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档