和参数相关的帮助类,原生自带,直接 require('querystring') 即可使用。

此类一共包括4个方法:

  • querystring.stringify(obj, [sep], [eq])
  • querystring.parse(str, [sep], [eq], [options])
  • querystring.escape
  • querystring.unescape
  • [内参数]表示可选参数,
  • [sep]指分隔符 默认& ,
  • [eq]指分配符 默认=

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

对象格式化成参数字符串(中文编码),obj就是要格式化的对象,必选参数.

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

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

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

参数字符串格式化成对象

var obj={name:"fangao",url:"http://fangao.com"};

var param= querystring.stringify(obj);
 

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

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

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

可以看到格式化以后是object类型,并且汉字自动解码显示出来.

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

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

然后解析:

newobj=querystring.parse(param,'|','*');
console.log(newobj);

 

三、querystring.escape

参数编码

var param="梵高&高更"
console.log(querystring.escape(param));

四、querystring.unescape

参数解码

var param="梵高&高更"

console.log(querystring.unescape(querystring.escape(param)));

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

 

[Node.js] querystring类的更多相关文章

  1. node.js querystring类介绍

    querystring 模块提供了一些实用函数,用于解析与格式化 URL 查询字符串. 使用以下方法引入: const querystring = require('querystring'); 此类 ...

  2. node.js querystring处理参数

    C:\Documents and Settings\Administrator\WebstormProjects\untitled6>node> url{ parse: [Function ...

  3. node.js—Buffer类(二进制数据处理模块)

    Buffer类概述 一个用于更好的操作二进制数据的类 我们在操作文件或者网络数据的时候,其实操作的就是二进制数据流 Node为我们提供了一个更加方便的去操作这种数据流的类 Buffer,他是一个全局的 ...

  4. 23. Node.Js Buffer类(缓冲区)-(三)文件读取实例

    转自:https://blog.csdn.net/u011127019/article/details/52513109

  5. 22. Node.Js Buffer类(缓冲区)-(二)

    转自:https://blog.csdn.net/u011127019/article/details/52512242

  6. 21. Node.Js Buffer类(缓冲区)-(一)

    转自:https://blog.csdn.net/u011127019/article/details/52512242

  7. 为什么Node.JS会受到青睐?

    为什么会是Node.JS? 从技术上讲,Node.JS不是一个非常好的项目,Node.JS只是把一个烂想法实现到了可以接受的程度. 但是人们为什么愿意用Node.JS? 从历史看来,成功的项目从来都不 ...

  8. mongodb shell和Node.js driver使用基础

    开始: Mongo Shell 安装后,输入mongo进入控制台: //所有帮助 > help //数据库的方法 > db.help() > db.stats() //当前数据库的状 ...

  9. 有用的内置Node.js APIs

    前言 在构建你的第一个Node.js应用程序时,了解node开箱即用的实用工具和API是很有帮助的,可以帮助解决常见的用例和开发需求. 有用的Node.js APIs Process:检索有关环境变量 ...

随机推荐

  1. thinkphp学习3-模板与视图

    1.模板赋值 如果要在模板中输出变量,必须在在控制器中把变量传递给模板,系统提供了assign方法对模板变量赋值,无论何种变量类型都统一使用assign赋值. $this->assign('na ...

  2. #Leetcode# 692. Top K Frequent Words

    https://leetcode.com/problems/top-k-frequent-words/ Given a non-empty list of words, return the k mo ...

  3. Word中怎样删除分节符而不影响前节页面设置

    在Word中,通过常规方法删除一个不需要的分节符时,会默认将分节符后面的页面设置带入前一节.比如,第一节是纵向排版,第二节是横向排版,当删除第二节的全部内容,包括二者之间的分节符之后,就会使得第一节的 ...

  4. mybatis映射文件的使用(一),工程目录结构、源代码和数据库

    代码开发环境 开发工具为IDEA 工程构建方式为maven 数据库为mysql 5.7.20 mybatis版本为 3.1.1 mysql-connect-java jar包版本为 5.1.34 数据 ...

  5. Opera官网打不开 下载Opera最新版本的实际地址

    目前Opera官网可以打开,但是点下载时就会出错,国内无法访问Opera的下载地址,无法通过官网直接下载Opera浏览器.下面提供下载的方式. 一.通过官方的ftp站点下载 FTP地址为 http:/ ...

  6. [CF671E] Organizing a Race

    题目大意 有\(n\)个加油站排成一行,编号为\(1\sim n\) ,\(i\)与\(i+1\)间有一条长为\(w_i\)千米的道路. 一辆汽车在经过加油站\(i\)时会得到\(g_i\)升汽油 , ...

  7. 【BZOJ3064】CPU监控(线段树)

    [BZOJ3064]CPU监控(线段树) 题面 BZOJ 洛谷 题解 神仙\(zsy\)出在了\(noip\)模拟的题目.(然而\(zsy\)出的还是这题的升级版) 首先明确一点,这题是一个吉司机线段 ...

  8. 洛谷3732:[HAOI2017]供给侧改革——题解

    https://www.luogu.org/problemnew/show/P3732 Anihc国提高社会生产力水平.落实好以人民为中心的发展思想.决定进行供给侧结构性改革. 为了提高供给品质.你调 ...

  9. BZOJ 4898 [APIO2017] 商旅 | SPFA判负环 分数规划

    BZOJ 4898 [APIO2017] 商旅 | SPFA判负环 分数规划 更清真的题面链接:https://files.cnblogs.com/files/winmt/merchant%28zh_ ...

  10. 【BZOJ4869】【SHOI2017】相逢是问候

    Description BZOJ传送门 Solution 这题涉及到指数嵌套堆叠,可能可以用欧拉函数解决. 试想一个数\(a_i\)经过\(k\)次操作后会变成什么? \[ k个c\;\; \begi ...