node.js的querystring模块

Posted sophiehui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了node.js的querystring模块相关的知识,希望对你有一定的参考价值。

querystring主要是用于对字符串进行操作和解析。共有四个方法:querystring.parse,querystring.stringify,querystring.escape,querystring.unescape。

使用querystring前先requery进来:const querystring = require("querystring");

然后可以使用上述的四个方法:

1.querystring.parse方法:字符串反序列化为一个对象

querystring.parse(str,separator,eq,options)

1)str是需要被反序列化的字符串;

2)separator是分割字符(默认是‘&’),可以省略;

3)eq是用于划分键和值的符号(比如:name=sophiehui,可以省略,默认是‘=’);

4)options用来设置maxKeys和decodeURIComponent这两个属性,maxKeys用来设置最多可以解析多少对键值对,传一个number值,默认为1000,如果传入一个0,则不限制键值对的数量;decodeURIComponent用于对含有%的字符串进行解码,默认值是querystring.unescape。

例如:querystring.parse("name=sophiehui&interest="music"&interest="reading","&","=",{maxKeys:2});返回值为:{ name: ‘whitemu‘, sex: ‘man‘ }

2.querystring.stringify:序列化一个对象为字符串

querystring.stringify(obj,separator,eq,options)

1)obj:需要被序列化的对象;

2)separator是分割字符(默认是‘&’),可以省略;

3)eq是用于划分键和值的符号(比如:name=sophiehui,可以省略,默认是‘=’);

4)options传入一个对象,用于设置encodeURIComponent属性,encodeURIComponent是一个functong,将一个不安全的url设置为百分比的形式(默认值为querystring.escape())

例如:querystring.stringify({name: ‘sophiehui‘, interest: [ ‘music‘, ‘reading‘ ] },"&","=");返回值为:‘name&sophiehui=interest&music=interest&reading‘

3.querystring.escape:对传入的%字符串进行编码

querystring.escape(str)

querystring.escape("name=2,6");返回‘name%3D2%3C6‘

3.querystring.unescape:对传入的%字符串进行解码

querystring.unescape(str)

querystring.unescape("name%3D2%3C6");返回"name=2,6"

 

以上是关于node.js的querystring模块的主要内容,如果未能解决你的问题,请参考以下文章

6.21学习总结node.js里面文件(夹)操作,模块系统,url 处理网址,querystring 处理查询字符串

Node.js | 搭建后端服务器(含内置模块 http | url | querystring 的使用)

node.js关于querystring

Node.js 模块加载及包的管理

2021.10.26 Node.js笔记

Node.js 路由