Node.js常用内置模块

1、url

1.1 parse

url.parse(urlString[, parseQueryString[, slashesDenoteHost]])
url.parse()可以将一个完整的URL地址,分为很多部分,常用的有:host、port、pathname、path、query。
第二个参数为 true 表示直接将查询字符串转为一个对象(通过query属性来访问),默认第二个参数为false。

const url = require('url')
const urlString = 'https://www.baidu.com:443/ad/index.html?id=8&name=mouse#tag=110'
const parsedStr = url.parse(urlString)
console.log(parsedStr)

1.2 format

url.format(URL[, options])
将一个解析后的URL对象、转成、一个格式化的URL字符串。

var url = require('url');
var a = url.format({ 
protocol : 'http' , 
auth : null , 
host : 'example.com:8080' , 
port : '8080' , 
hostname : 'example.com' , 
hash : null , 
search : '?a=index&t=article&m=default', 
query : 'a=index&t=article&m=default', 
pathname : '/one', 
path : '/one?a=index&t=article&m=default', 
href : 'http://example.com:8080/one?a=index&t=article&m=default' 
});
console.log(a);
//输出结果:http://example.com:8080/one?a=index&t=article&m=default

1.3 resolve

url.resolve(from, to)
url.resolve方法可以用于拼接URL

const url = require('url')
var a = url.resolve('/one/two/three', 'four')
var b = url.resolve('http://example.com/', '/one')
var c = url.resolve('http://example.com/one', '/two')
console.log(a + "," + b + "," + c)
//输出结果:/one/two/four,
//http://example.com/one,
//http://example.com/two,

替换 域名后面第一个“/”后的内容,如果出现 . 就向上返回一级之后再拼接,两个…就向上两级拼接

2、querystring

2.1 parse

querystring.parse(str[, sep[, eq[, options]]])

  • str 欲转换的字符串
  • sep 设置分隔符,默认为 ‘&’
  • eq 设置赋值符,默认为 ‘=’
  • [options] maxKeys 可接受字符串的最大长度,默认为1000
    将字符串转成对象。
querystring.parse('foo=bar&baz=qux&baz=quux&corge')
// returns
{ foo: 'bar', baz: ['qux', 'quux'], corge: '' }

2.2 stringify

querystring.stringify(obj[, sep[, eq[, options]]])

  • obj 欲转换的对象
  • sep 设置分隔符,默认为 ‘&’
  • eq 设置赋值符,默认为 ‘=’
querystring.stringify({foo: 'bar', baz: 'qux'}, ';', ':')
// returns
'foo:bar;baz:qux'

2.3 escape/unescape

querystring.escape(str)
对给定的 str 进行 URL 编码(转义)。

const querystring = require('querystring')
var str = 'id=3&city=北京&url=https://www.baidu.com'
var escaped = querystring.escape(str)
console.log(escaped)

querystring.unescape(str)
对给定的 str 进行解码。(反转义)

const querystring = require('querystring')
var str = 'id%3D3%26city%3D%E5%8C%97%E4%BA%AC%26url%3Dhttps%3A%2F%2Fwww.baidu.com'
var unescaped = querystring.unescape(str)
console.log(unescaped)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值