js获取当前页面的URL并且截取?之后的数据,返回json

js获取当前页面的URL并且截取‘?’之后的数据,返回json格式的数据

最近想要把学到的东西整理一下,以后方便查找,也是一种自我累积,如果有错误或者更好的,欢迎提出!

这篇文档主要是写关于获取页面的URL数据,并且拿到“?”后面的那一部分,最后作为json格式返回。这个在web前端中应该是比较常用的,为了防止忘记,同时也是方便有时间了复习一下,整理一下记载下来;

通常情况下需要截取的url情况如下(看到当前博客界面上面就是,所以直接copy下来了):
https://i.cnblogs.com/EditPosts.aspx?opt=1
其中https: 这部分是网络协议,后面的是网址,我们需要的是“opt=1”这一部分,也就是?后面的部分,我们把这种模式成为 ‘key = value’模式吧。

以下是得到URL并且获取到?后面数据的方法,返回的 格式是json

function parseUrlParams(){

    //获取到href
    var urlParams = window.location.href;

    var vars = {};

    //	处理获取到的url,(g表示全局匹配,i表示忽略大小写)
var parts = urlParams.replace(/[?&]+([^=&]+)=([^&]*)/gi,

        function(m,key,value) {
	    vars[key] = value;
	});

     return vars;
    }

调用方法并且得到返回的json数据
var jsonData = parseUrlParams();

拿到json数据中的value
var value = jsonData['key'];

value就是我们前端程序员想要的数据了,根据这个数据匹配想要的东西去吧

原文地址:https://www.cnblogs.com/breaty/p/7756479.html