NodeJS基础:querystring 模块的使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Divide_/article/details/52464001

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

nodejs 中的 querystring 模块具有序列化与反序列化,转义与反转义的两组功能。

querystring.stringify

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

  1. 简单的案例

     querystring.stringify({name:'pkcms',author:'zh',date:''})
    //'name=pkcms&author=zh&date='
    
  2. stringify 同样也能转换包含数组的JSON

       querystring.stringify({name:'pkcms',author:['zh','hhy'],date:''})
      //'name=pkcms&author=zh&author=hhy&date='
    
  3. stringify 中的第2个参数是用来修改 & 分隔符为其他符号,如下示例的英文逗号

    querystring.stringify({name:'pkcms',author:'zh',date:''},',')
    //'name=pkcms,author=zh,date='
    
  4. stringify 中不但能修改默认的 & 分隔符,也可以修改 = 赋值符,如下示例

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

querystring.parse

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

  1. 简单示例

    querystring.parse('name=pkcms&author=zh&date=')
    //{ name: 'pkcms', author: 'zh', date: '' }
    
  2. 相同的参数名会反序列化为一个数组

    querystring.parse('name=pkcms&author=zh&author=hhy&date=')
    //{ name: 'pkcms', author: [ 'zh', 'hhy' ], date: '' }
    
  3. 第2个参数是用来指明分隔符是用了哪个字符

    querystring.parse('name=pkcms,author=zh,date=',',')
    //{ name: 'pkcms', author: 'zh', date: '' }
    
  4. 第3个参数是用来指明赋值符是用了hash字符

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

querystring.escape

将一个字符转义成一个编码

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

querystring.usescape

将一个编码反转义成一个字符

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

如果还想要了解更多的关于Readline的用法以及更多的方法和事件,可以去看官方文档

转载请标明出处:http://blog.csdn.net/divide_

猜你喜欢

转载自blog.csdn.net/Divide_/article/details/52464001