Node中的path、querystring、url模块

node与path模块

path模块提供了一些用于处理文件路径的小工具
const path=require("path")//注意:使用path模块需要先行引入
解析为对象 parse:
var pathobj1=path.parse('E:/VS code/day1/best/大班课/node1.js')
console.log(pathobj1) 
输出:
{
 root:  'E:/',                                              盘符
 dir:    'E:/VS code/day1/best/大班课',                     目录
 base:   'node1.js',                                        文件名(文件全名)
 ext:    '.js',                                             文件后缀
 name:   'node1'                                            文件名  
 }  
把你的对象转化成字符串 format:
var pathstr1=path.format(pathobj1)
console.log(pathstr1)

输出:
E:/VS code/day1/best/大班课\node1.js
把很多路径解析成绝对路径 resolve:
                  path.resolve("./node1(1).js") 
                    ||可拆开写
var absolutepath= path.resolve('./',"node1(1).js")
//例如:path.resolve('./',"pic","index.js","../","js","index.js")可重复使用
console.log(absolutepath) 

输出:
D:\VS code\day1\best\大班课\node1(1).js
把路径解析为相对路径 join:
console.log(path.join('./',"node1(1).js")) 

输出:
node1(1).js

node与querystring模块

querystring一般是对http请求所带的数据进行解析
const querystring=require('querystring')//注意:使用querystring模块需要先行引入
解析为对象 parse:
var qs="keywords=badguy&id=123"
var qsobj=querystring.parse(qs)
console.log(qsobj)

输出:
{ keywords: 'badguy', id: '123' }
将对象还原 stringify:
var restore = querystring.stringify(qsobj)
console.log(restore)

输出:
keywords=badguy&id=123
使传入的字符串进行编码 escape:
console.log(querystring.escape("name=博客"))

输出:
name%3D%E5%8D%9A%E5%AE%A2
使传入的字符串进行解码 unescape:
console.log(querystring.unescape('https://www.baidu.com/s?ie=utf-8&f=3&rsv_bp=1&rsv_idx=1&tn=baidu&wd=%E5%90%B4%E5%BD%A6%E7%A5%96'))

输出:
https://www.baidu.com/s?ie=utf-8&f=3&rsv_bp=1&rsv_idx=1&tn=baidu&wd=吴彦祖

node与url模块

url模块用于解析url字符串和url对象
const url=require("url")//注意:使用url模块需要先行引入
解析为对象 parse:
console.log(url.parse('https://www.baidu.com/baidu?wd=吴彦祖'))

输出:
{
  protocol: 'https:',           //协议                 
  slashes: true,                //如果协议protocol冒号后跟的是两个斜杠字符(/),那么值为true
  auth: null,                   //URL的用户名与密码部分
  host: 'www.baidu.com',        
  port: null,                   //端口
  hostname: 'www.baidu.com',
  hash: null,
  search: '?wd=吴彦祖',
  query: 'wd=吴彦祖',           //查询语句
  pathname: '/baidu',           //接口
  path: '/baidu?wd=吴彦祖',
  href: 'https://www.baidu.com/baidu?wd=吴彦祖'
}
将一个url对象格式化成url字符串 format:
var obj = {
protocol: 'https:',           //协议                 
slashes: true,                //如果协议protocol冒号后跟的是两个斜杠字符(/),那么值为true
auth: null,                   //URL的用户名与密码部分
host: 'www.baidu.com',        
port: null,                   //端口
hostname: 'www.baidu.com',
hash: null,
search: '?wd=吴彦祖',
query: 'wd=吴彦祖',           //查询语句
pathname: '/baidu',           //接口
path: '/baidu?wd=吴彦祖',
href: 'https://www.baidu.com/baidu?wd=吴彦祖'
}
console.log(url.format(obj))

输出:
https://www.baidu.com/baidu?wd=吴彦祖
给域名添加或替换一个接口 resolve:
console.log(url.resolve("https://www.baidu.com","search"))
console.log(url.resolve("/one/two/three","four"));

输出:
https://www.baidu.com/search
/one/two/four
--End--
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值