javascript 通过a标签解析url 地址

2021-01-08  本文已影响0人  Vivian_06e6
/* 
* 通过a标签解析url地址
* url参数是字符串
* 
*/ 
function parseAURL(url) { 
  //创建一个a标签 
  var a =  document.createElement('a'); 
  //将url赋值给标签的href属性。 
  a.href = url; 
  return { 
    source: url, 
    protocol: a.protocol.replace(':',''), //协议 
    hostname: a.hostname,   //主机名称 
    host: a.host,   //主机名称 
    port: a.port,   //端口 
    href:a.href,
    origin:a.origin,
    pathname:a.pathname,
    query: a.search,  //查询字符串 
    params: (function(){  //查询参数 
      var ret = {}, 
          seg = a.search.replace(/^\?/,'').split('&'), 
          len = seg.length, i = 0, s; 
      for (;i<len;i++) { 
        if (!seg[i]) { continue; } 
        s = seg[i].split('='); 
        ret[s[0]] = s[1]; 
      } 
      return ret; 
    })(), 
    file: (a.pathname.match(/\/([^\/?#]+)$/i) || [,''])[1], //文件名 
    hash: a.hash.replace('#',''), //哈希参数 
    path: a.pathname.replace(/^([^\/])/,'/$1'), //路径 
    relative: (a.href.match(/tps?:\/\/[^\/]+(.+)/) || [,''])[1],  //相对路径 
    segments: a.pathname.replace(/^\//,'').split('/') //路径片段 
  }; 
} 

parseURL("http://finance.tuanche.com/m/instalment/carStyleDetail?carId=1212796&y=2021&csId=10")
上一篇下一篇

猜你喜欢

热点阅读