node.js的url模块
url.parse():将一个网址、路径转成对象格式
url.format():将一个对象转成路径字符串格式
url.resolve():路径的添加和替换
例如:https://www.baidu.com:443/category/food?a=1&b=2#hash=30
const url=require('url')
const str='https://www.baidu.com:443/category/food?a=1&b=2#hash=30'
//1.url.parse()将字符串转成对象
console.log(url.parse(str))
/*Url {
protocol: 'https:',
slashes: true,
auth: null,
host: 'www.baidu.com:443',
port: '443',
hostname: 'www.baidu.com',
hash: '#hash=30',
search: '?a=1&b=2',
query: 'a=1&b=2',
pathname: '/category/food',
path: '/category/food?a=1&b=2',
href: 'https://www.baidu.com:443/category/food?a=1&b=2#hash=30' }
*/
//2、url.format()将对象转成字符串
console.log(url.format(url.parse(str)))//
//'https://www.baidu.com:443/category/food?a=1&b=2#hash=30'
//3、url.resolve()对路径字符串的追加和替换,括号里有两个参数
console.log(url.resolve(str,'b'))
//'https://www.baidu.com:443/category/b',相当于以斜杠作为分段
console.log(url.resolve(str,'../b'))
//'https://www.baidu.com:443/b',替换至上一层