>  기사  >  웹 프론트엔드  >  JavaScript는 두 가지 방법을 사용하여 URL을 json 형식으로 구문 분석합니다.

JavaScript는 두 가지 방법을 사용하여 URL을 json 형식으로 구문 분석합니다.

黄舟
黄舟원래의
2017-08-20 10:05:071075검색

이 글에서는 주로 자바스크립트가 URL을 json 형식으로 파싱하는 두 가지 방법을 소개합니다. 관심 있는 친구들이 참고할 수 있습니다.

이 글에서는 자바스크립트가 URL을 json 형식으로 파싱하는 두 가지 방법을 소개합니다.

방법 1: 가장 간단한 방법, a 태그를 사용하여


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)

얻은 결과

방법 2: nodejs의 url 모듈을 통해

URL을 구문 분석하려면 Node.js에서 제공하는 url 모듈이 필요합니다. 구문 분석()을 통해 문자열을 Url 객체로 구문 분석합니다.


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

Returned results


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' }

위 내용은 JavaScript는 두 가지 방법을 사용하여 URL을 json 형식으로 구문 분석합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.