和参数相关的帮助类,原生自带,直接 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. MaxAlertView 强大的弹框试图

    [链接]https://github.com/MrJalen/MaxAlertView MaxAlertView ) { [MaxAlertView showAlertWithTitle:@" ...

  2. 词频统计(WEB)版

    需求: 在以前的基础上把程序迁移到web平台,通过用户上传TXT的方式接收文件. 前端页面代码: <%@ Page Language="C#" AutoEventWireup ...

  3. webservice(一) 概念

    Web service:是一个平台独立的,低耦合的,自包含的.基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述.发布.发现.协调和配置这些应用程序,用于开发分 ...

  4. Spring Cloud之Eureka服务注册与发现

    解决什么问题 ➟阐述微服务以及服务注册发现的部分概念 ➟阐述Eureka服务注册与发现的部分原理及细节 为什么需要服务中心 过去,每个应用都是一个CPU,一个主机上的单一系统.然而今天,随着大数据和云 ...

  5. BZOJ 3173 最长上升子序列(树状数组+二分+线段树)

    给定一个序列,初始为空.现在我们将1到N的数字插入到序列中,每次将一个数字插入到一个特定的位置.每插入一个数字,我们都想知道此时最长上升子序列长度是多少? 由于序列是顺序插入的,所以当前插入的数字对之 ...

  6. 【uoj#142】【UER #5】万圣节的南瓜灯 乱搞+并查集

    题目描述 给出一张 $n\times m$ 的网格图,两个格子之间有一条双向边,当且仅当它们相邻,即在网格图中有一条公共边. 特殊地,对于 $1\le x\le n​$ ,$(x,1)​$ 和 $(x ...

  7. C++模式学习------原型模式

    原型模式: 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象.意思就是从A的实例得到一份与A内容相同,但是又互不干扰的实例B. class base { public : base(co ...

  8. EF 使用 oracle

    EF 使用 oracle https://www.oracle.com/technetwork/topics/dotnet/downloads/index.html C:\Program Files ...

  9. ava8并发教程:Threads和Executors

    原文地址  原文作者:Benjamin Winterberg 译者:张坤 欢迎阅读我的Java8并发教程的第一部分.这份指南将会以简单易懂的代码示例来教给你如何在Java8中进行并发编程.这是一系列教 ...

  10. nginx支持.htaccess文件实现伪静态的方法

    方法如下: 1. 在需要使用.htaccess文件的目录下新建一个.htaccess文件, vim /var/www/html/.htaccess 2. 在里面输入规则,我这里输入Discuz的伪静态 ...