javascript將url解析為json格式

方法一:最簡單的方法,利用a標簽來實現(xiàn)

function parseUrl(url){
    var a=document.createElement('a');
    a.href=url;
    return {
      protocol:a.protocol.replace(':',''),
      hostname:a.hostname,
      port:a.port,
      path:a.pathname,
      query:(()=>{
        var query=a.search.substr(1);
        var queryArr=query.split('&');
        var queryObj={};
        queryArr.forEach((item,index)=>{
            var item=item.split('=');
            var key=item[0];
            queryObj[key]=item[1];
        })
        return queryObj;
      })(),
       params:(()=>{
        var params=a.hash.substr(1);
        var paramsArr=params.split('#');
        return paramsArr;
        
      })(),

    }
}
var urlObj = parseUrl('http://www.baidu.com:90/search?name=liyajie&age=12#abc#bbb')
console.log(urlObj)

得到的結(jié)果

image.png

方法二:通過nodejs的url模塊
解析URL需要用到Node.js提供的url模塊,它使用起來非常簡單,通過parse()將一個字符串解析為一個Url對象:

    'use strict';
     var url = require('url');
     console.log(url.parse('http://user:pass@host.com:8080/path/to/file?query=string#hash'));

返回的結(jié)果

Url {
  protocol: 'http:',
  slashes: true,
  auth: 'user:pass',
  host: 'host.com:8080',
  port: '8080',
  hostname: 'host.com',
  hash: '#hash',
  search: '?query=string',
  query: 'query=string',
  pathname: '/path/to/file',
  path: '/path/to/file?query=string',
  href: 'http://user:pass@host.com:8080/path/to/file?query=string#hash' }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,695評論 19 139
  • Node.js是目前非?;馃岬募夹g(shù),但是它的誕生經(jīng)歷卻很奇特。 眾所周知,在Netscape設(shè)計出JavaScri...
    w_zhuan閱讀 3,737評論 2 41
  • Node.js是目前非?;馃岬募夹g(shù),但是它的誕生經(jīng)歷卻很奇特。 眾所周知,在Netscape設(shè)計出JavaScri...
    Myselfyan閱讀 4,205評論 2 58
  • 個人入門學習用筆記、不過多作為參考依據(jù)。如有錯誤歡迎斧正 目錄 簡書好像不支持錨點、復(fù)制搜索(反正也是寫給我自己看...
    kirito_song閱讀 2,654評論 1 37
  • 第31章回顧 這個龍族男孩說話聲音不小,空曠的洞里都傳出了回音,所有龍族的孩子都聽見了。可是這三個站在龍瀅身邊男孩...
    陳瀛Neptune閱讀 504評論 2 2

友情鏈接更多精彩內(nèi)容