JavaScript

超轻量级php框架startmvc

javascript将url解析为json格式的两种方法

更新时间:2020-05-30 20:30:02 作者:startmvc
本文介绍了javascript将url解析为json格式的两种方法,分享给大家,具体如下:方法一:最简

本文介绍了javascript将url解析为json格式的两种方法,分享给大家,具体如下:

方法一:最简单的方法,利用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)

得到的结果

方法二:通过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'));

返回的结果


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 json url javascript json格式 javascript解析url返回json