【JavaScript】若url中的参数childUrl依然是一个url,如何获取到完整的childUrl内容

 //url例子 http://xxx.com/xx/xxx?id=0001&code=123123&childUrl=/bbb/ccc/fff/?id=34445&save=true

function parseURLParams(url) {
  const str = url.slice(url.indexOf('?')+1)
  const paramList = str.split('&');
  var result = {};
  paramList.forEach((paramStr) => {
    const strList = paramStr.split('=');
    var name = strList[0] || '';
    var value = strList[1] || '';
    if (result.hasOwnProperty(name)) {
      if (Array.isArray(result[name])) {
        result[name].push(value);
      } else {
        var temp = result[name];
        result[name] = [temp, value]
      }
    } else {
      result[name] = value
    }
  });
  return result;
}

// encodeURIComponent编码
var str = `http://xxx.com/xx/xxx?id=0001&code=123123&childUrl=${encodeURIComponent('/pages/addreceipt/mainland/mainland?familyId=1237983478&sourceInSave=true')}`
// 获取所有参数
console.log(parseURLParams(str)) 
// decodeURIComponent解码
console.log(decodeURIComponent(parseURLParams(str).childUrl)) 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值