美文网首页
获取url 路径中的协议、域名、端口、相对文件夹地址、参数及相关

获取url 路径中的协议、域名、端口、相对文件夹地址、参数及相关

作者: 站在大神的肩膀上看世界 | 来源:发表于2019-04-10 11:24 被阅读0次

    背景

    项目中总需要到解析路径的参数,或者对当前url做一些操作,那么如下我整理了一些大家会用的到的方法,方便方便大家开发

    代码

    // 获取完整url 
    window.location.href
    // 获取协议
    window.location.protocol
    // 获取主机名
    window.location.hostname
    // 获取主机名加端口号
    window.location.host
    // 获取端口号
    window.location.port
    // 获取当前url的路径部分
    window.location.pathname
    // 获取url添加参数的路径(?后面的部分,包含?)
    window.location.search
    // 获取#开始的地方
    window.location.hash
    // 获取路径具体的相关参数
    (正则)
    function getQuery(name,url) {
      var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i');
      var r = url  ? url : window.location.search.substr(1).match(reg);
      if (r != null) {
        return unescape(r[2]);
      }
      return r != null ? unescape(r[2]) : '';
    }
    // 使用方式getQuery("参数名")或 getQuery("参数名","路径")
    (split拆分)
    function GetRequest() {
      var url = location.search; //获取url中"?"符后的字串
      var theRequest = new Object();
      if (url.indexOf("?") != -1) {
        var str = url.substr(1);
        strs = str.split("&");
        for(var i = 0; i < strs.length; i ++) {
          theRequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]);
        }
      }
      return theRequest;
    }
    var Request = new Object();
    Request = GetRequest();
    // var id=Request["id"];
    // var 参数1,参数2,参数3,参数N;
    // 参数1 = Request['参数1'];
    // 参数2 = Request['参数2'];
    // 参数3 = Request['参数3'];
    // 参数N = Request['参数N'];
    

    拓展

    关于window 对象的一些相关属性
    关于location 的属性及方法》》》》》和本文关联
    如果我的随笔对你有帮助记得关注我给个喜欢已表支持,我会一直加油的(注:如需转载,请注明来源)

    相关文章

      网友评论

          本文标题:获取url 路径中的协议、域名、端口、相对文件夹地址、参数及相关

          本文链接:https://www.haomeiwen.com/subject/nuigiqtx.html