Nodejs querystring类介绍
Nodejs querystring类介绍
querystring是node.js和参数相关的工具类,node.js原生自带,直接 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:"一介布衣",url:"http://yijiebuyi.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:“一介布衣”,url:“http://yijiebuyi.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);
然后解析: param=querystring.stringify(obj,’|’,’’); console.log(param);
三:querystring.escape
参数编码 var param="一介布衣& http://yijiebuyi.com" console.log(querystring.escape(param));
四:querystring.unescape
参数解码 var param=“一介布衣&http://yijiebuyi.com”; console.log(querystring.escape(param)); console.log(querystring.unescape(querystring.escape(param))); 直接对上面编码后的参数字符串进行解码
Nodejs querystring类介绍
querystring
是 Node.js 中用于处理查询字符串的内置工具类。它提供了四个主要方法,用于将对象转换为查询字符串以及将查询字符串转换回对象。本文将详细介绍这些方法及其用法。
一: querystring.stringify(obj, [sep], [eq])
该方法将一个对象格式化为查询字符串。obj
是必需的参数,表示要格式化的对象;[sep]
和 [eq]
分别是分隔符和等号,默认值分别是 &
和 =
。
示例代码:
const querystring = require('querystring');
var obj = { name: "一介布衣", url: "http://yijiebuyi.com" };
var param = querystring.stringify(obj);
console.log(param); // 输出: name=%E4%B8%80%E4%BB%A3%E5%B8%81&url=http%3A%2F%2Fyijiebuyi.com
// 指定分隔符和等号
param = querystring.stringify(obj, '|', '*');
console.log(param); // 输出: name*%E4%B8%80%E4%BB%A3%E5%B8%81|url*http%3A%2F%2Fyijiebuyi.com
二: querystring.parse(str, [sep], [eq], [options])
该方法将查询字符串解析为对象。str
是必需的参数,表示要解析的字符串;[sep]
和 [eq]
分别是分隔符和等号,默认值分别是 &
和 =
。
示例代码:
const querystring = require('querystring');
var obj = { name: "一介布衣", url: "http://yijiebuyi.com" };
var param = querystring.stringify(obj);
var newobj = querystring.parse(param);
console.log(typeof newobj, newobj); // 输出: object { name: '一介布衣', url: 'http://yijiebuyi.com' }
// 覆盖分割和分配符
param = querystring.stringify(obj, '|', '*');
newobj = querystring.parse(param, '|', '*');
console.log(newobj); // 输出: { name: '一介布衣', url: 'http://yijiebuyi.com' }
三: querystring.escape
该方法对字符串中的特殊字符进行编码。
示例代码:
const querystring = require('querystring');
var param = "一介布衣 & http://yijiebuyi.com";
console.log(querystring.escape(param)); // 输出: %E4%B8%80%E4%BB%A3%E5%B8%81%20%26%20http%3A%2F%2Fyijiebuyi.com
四: querystring.unescape
该方法对已编码的字符串进行解码。
示例代码:
const querystring = require('querystring');
var param = "一介布衣 & http://yijiebuyi.com";
param = querystring.escape(param);
console.log(querystring.unescape(param)); // 输出: 一介布衣 & http://yijiebuyi.com
通过上述示例代码,我们可以看到 querystring
类如何方便地进行查询字符串的编码和解码操作。希望这些示例能够帮助你更好地理解和使用 querystring
类。
querystring
是 Node.js 提供的一个用于处理 URL 编码字符串的工具类。它主要包括四个方法:querystring.stringify()
、querystring.parse()
、querystring.escape()
和 querystring.unescape()
。
一: querystring.stringify(obj, [sep], [eq])
该方法将对象转换为 URL 查询字符串,默认情况下会自动编码非 ASCII 字符。
示例代码:
const querystring = require('querystring');
var obj = { name: "一介布衣", url: "http://yijiebuyi.com" };
var param = querystring.stringify(obj);
console.log(param); // 输出:name=%E4%B8%80%E4%BB%A3%E5%B8%81%E5%A3%93&url=http%3A%2F%2Fyijiebuyi.com
// 指定分隔符和等号
param = querystring.stringify(obj, '|', '*');
console.log(param); // 输出:name*%E4%B8%80%E4%BB%A3%E5%B8%81%E5%A3%93|url*http%3A%2F%2Fyijiebuyi.com
二: querystring.parse(str, [sep], [eq], [options])
该方法将查询字符串解析为对象,默认情况下会自动解码非 ASCII 字符。
示例代码:
const querystring = require('querystring');
var str = 'name=%E4%B8%80%E4%BB%A3%E5%B8%81%E5%A3%93&url=http%3A%2F%2Fyijiebuyi.com';
var obj = querystring.parse(str);
console.log(obj); // 输出:{ name: '一介布衣', url: 'http://yijiebuyi.com' }
// 指定分隔符和等号
str = 'name*%E4%B8%80%E4%BB%A3%E5%B8%81%E5%A3%93|url*http%3A%2F%2Fyijiebuyi.com';
obj = querystring.parse(str, '|', '*');
console.log(obj); // 输出:{ name: '一介布衣', url: 'http://yijiebuyi.com' }
三: querystring.escape()
该方法对参数进行 URL 编码。
示例代码:
const querystring = require('querystring');
var param = "一介布衣 & http://yijiebuyi.com";
console.log(querystring.escape(param)); // 输出:%E4%B8%80%E4%BB%A3%E5%B8%81%E5%A3%93+%26+http%3A%2F%2Fyijiebuyi.com
四: querystring.unescape()
该方法对 URL 编码的字符串进行解码。
示例代码:
const querystring = require('querystring');
var encodedParam = "%E4%B8%80%E4%BB%A3%E5%B8%81%E5%A3%93+%26+http%3A%2F%2Fyijiebuyi.com";
console.log(querystring.unescape(encodedParam)); // 输出:一介布衣 & http://yijiebuyi.com
这些方法可以帮助你在处理 URL 参数时进行编码和解码操作,使你的应用更健壮和可靠。