每天学习一点点,成功增加一大步

NodeJS基础:querystring 模块的(反)序列化与(反)转义的使用

NodsJS zhanghui 2267℃

今天继续 nodejs 的学习,今天学习的是 nodejs 中的 querystring 模块具有序列化与反序列化,转义与反转义的两组功能。接下来分析下这两个组的作用有哪些

1、querystring.stringify —— 将一个对象序列化为一个查询的字符串,中间使用 & 和 = 分别为字符串中的分隔符和赋值符

① 简单的示例

> querystring.stringify({name:'pkcms',author:'zh',date:''})
'name=pkcms&author=zh&date='

② stringify 同样也能转换包含数组的JSON

> querystring.stringify({name:'pkcms',author:['zh','hhy'],date:''})
'name=pkcms&author=zh&author=hhy&date='

③ stringify 中的第2个参数是用来修改 & 分隔符为其他符号,如下示例的英文逗号

> querystring.stringify({name:'pkcms',author:'zh',date:''},',')
'name=pkcms,author=zh,date='

④ stringify 中不但能修改默认的 & 分隔符,也可以修改 = 赋值符,如下示例

> querystring.stringify({name:'pkcms',author:'zh',date:''},',',':')
'name:pkcms,author:zh,date:'

2、querystring.parse —— 将一个查询的字符串反序列化为一个对象,也就是说它与 querystring.stringify 是起相反作用的关系

① 简单示例

> querystring.parse('name=pkcms&author=zh&date=')
{ name: 'pkcms', author: 'zh', date: '' }

② 相同的参数名会反序列化为一个数组

> querystring.parse('name=pkcms&author=zh&author=hhy&date=')
{ name: 'pkcms', author: [ 'zh', 'hhy' ], date: '' }

③ 第2个参数是用来指明分隔符是用了哪个字符

> querystring.parse('name=pkcms,author=zh,date=',',')
{ name: 'pkcms', author: 'zh', date: '' }

④ 第3个参数是用来指明赋值符是用了哈皮字符

> querystring.parse('name:pkcms,author:zh,date:',',',':')
{ name: 'pkcms', author: 'zh', date: '' }

3、querystring.escape —— 将一个字符转义成一个编码

 > querystring.escape('<哈哈>')
'%3C%E5%93%88%E5%93%88%3E'

4、querystring.usescape —— 将一个编码反转义成一个字符

 > querystring.unescape('%3C%E5%93%88%E5%93%88%3E')
'<哈哈>'

转载请注明:隨習筆記 » NodeJS基础:querystring 模块的(反)序列化与(反)转义的使用