js将url参数对象化

一:将url参数对象化:

例如:url为:https://app.test.com/86LL5?xggameinfo={"user_id":"1","user_account":"ceshi001"}

参数对象化后 为:code=_5e9ee74ce7795

function getUrlObj () {
        var obj ={};
        let params = window.location.search.replace(/^\?/, '');
        let paramArray = params.split("&");
        for (let i = 0; i < paramArray.length; i++) {
            let itemArray = paramArray[i].split('=');
            let k = itemArray[0];
            let v = decodeURIComponent(itemArray[1]);
            if (v && k) {
                obj[k] = v;
            }
        }
        return obj;
}


二:将参数对象化

例如:url = 'http://www.baidu.com/?user=huixin&id=123&id=456&city=%E5%8C%97%E4%BA%AC&enabled'

function parseQueryString(url) {
            var params = {};
            var arr = url.split("?");
            var arr1 = arr[1].split("&");
            for (var i = 0; i < arr1.length; i++) {
                arr2 = arr1[i].split('='); 
                if (!arr2[1]) { 
                    params[arr2[0]] = 'true';
                } else  if (params[arr2[0]]) { 
                    var arr3 = [params[arr2[0]]]; 
                    arr3.push(arr2[1]); params[arr2[0]] = arr3; 
                } else { 
                    params[arr2[0]] = decodeURI(arr2[1]);
                } 
            }
            console.log(params);  
        } 
        
        var url = 'http://www.baidu.com/?user=huixin&id=123&id=456&city=%E5%8C%97%E4%BA%AC&enabled'; 
        parseQueryString(url); 

输出结果为:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值