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