获取URL参数的两个封装方法

url格式:”https://mp.csdn.net/mdeditor?a=1&b=2&c=3“;

封装方法1:

var getUrlParameter = function(){
    //  获取url参数
    function getQueryString() {
        var parameter = location.search.substr(1); // 获取url中"?"符后的字串  
        var parameterJson = {}; // 保存参数数据的对象
        var parameterArr = parameter.length ? parameter.split("&") : []; // 取得每一个参数项,
        var item = null;
        var len =parameterArr.length;

        for (var i = 0; i < len; i++) {//这里写代码片
            item =parameterArr[i].split("=");
            var name = decodeURIComponent(item[0]);// URI 进行解码。
            var value = decodeURIComponent(item[1]);// URI 进行解码。
            if (name) {
                parameterJson[name] = value;
            }
        }
        return parameterJson;
    }
    return {
        getQueryString:getQueryString
    }
}();

调用方法:

var urlString = getUrlParameter.getQueryString();
console.log(urlString["a"]) // -->输出为 1;

封装方法2:

function getUrlParam() {
    this.parameter = location.search.substr(1); // 获取url中"?"符后的字串  
    this.parameterJson = {}; // 保存参数数据的对象
    this.parameterArr = this.parameter.length ? this.parameter.split("&") : []; // 取得每一个参数项,
    this.item = null;
    this.len =this.parameterArr.length;
    var _this=this;
    for (var i = 0; i < this.len; i++) {//这里写代码片
        _this.item =_this.parameterArr[i].split("=");
        _this.name = decodeURIComponent(_this.item[0]);// URI 进行解码。
        _this.value = decodeURIComponent(_this.item[1]);// URI 进行解码。
        if (_this.name) {
            _this.parameterJson[_this.name] = _this.value;
        }
    }
    return this.parameterJson;
}

调用方法:

var getUrlParam=new getUrlParam();//使用:用类去创建实例
var a=getUrlParam["a"];
console.log(a) // -->输出为 1;

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值