nodejs QueryString模块 详解

时间:2022-01-02 11:58:12

QueryString模块

"QueryString" 模块用于实现URL参数字符串与参数对象的互相转换

此类一共包括4个方法:

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

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

querystring.escape

querystring.unescape

一:querystring.stringify(obj,[sep],[eq])

对象格式化成参数字符串 ,obj就是要格式化的对象,必选参数.

var obj={name:"xiaofenguo",url:"http://home.cnblogs.com/u/xiaofenguo/"};
var param= querystring.stringify(obj);
//没有指定分隔符和分配符,并且自动编码汉字
console.log(param);

nodejs  QueryString模块 详解

param=querystring.stringify(obj,'|','*');
//指定了分隔符和分配符
console.log(param);

nodejs  QueryString模块 详解

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

参数字符串格式化成对象

var parse='name=xiaofenguo&url=http%3A%2F%2Fhome.cnblogs.com%2Fu%2Fxiaofenguo%2F';

我们把param 字符串格式化成对象,使用默认分隔分配符

var newobj=querystring.parse(param);
console.log(typeof newobj,newobj);

//打印出来格式化后的数据类型 和 内容.

nodejs  QueryString模块 详解

可以看到格式化以后是object类型.

当覆盖分割和分配符,如下:

param=querystring.stringify(obj,'|','*');
console.log(param);

nodejs  QueryString模块 详解

三:querystring.escape

参数编码

var param="QueryString模块 详解";  
console.log(querystring.escape(param));

nodejs  QueryString模块 详解

四:querystring.unescape

参数解码

var param='QueryString%E6%A8%A1%E5%9D%97%20%E8%AF%A6%E8%A7%A3';
console.log(querystring.unescape(querystring.escape(param)));

直接对上面编码后的参数字符串进行解码

nodejs  QueryString模块 详解