@Wangww0925
2019-08-07T08:03:01.000000Z
字数 2554
阅读 361
NodeJs
stringify(参数1, 参数2, 参数3) - 将对象序列化为字符串 【使用&和=分别为字符串中的分割符合赋值符】parse(参数1, 参数2, 参数3) - 将字符串反序列化为对象 【与querystring.stringlfy()的作用相反】escape(data) - 将字符编码unescape(data) - 将字符解码unescapeBuffer()encode()decode()
再看querystring的序列化与反序列化之前,我们看下JSON对序列化与反序列化的处理
例子:
var obj = {name:"laowang",age:100,sex:"女"};// 将对象转换为json字符串var jsonStr = JSON.stringify(obj);console.log(jsonStr); // 返回JSON字符串 '{"name":"laowang","age":100,"sex":"女"}'// 将json字符串转换为对象console.log(JSON.parse(jsonStr)); // 返回对象 { name: 'laowang', age: 100, sex: '女' }
参数1 - 将对象序列号化为字符串参数2 - 指定分隔符,默认 &参数3 - 修饰属性和属性值的连接符,默认 =
如果转换的对象中有中文会对中文进行unicode编码
var querystring = require("querystring");var obj = {name:"laowang",age:100,sex:"女"};var str = querystring.stringify(obj);console.log(str); // name=laowang&age=100&sex=%E5%A5%B3
var querystring = require("querystring");var obj = {name:"laowang",age:100,sex:"女"};var str = querystring.stringify(obj,"@");console.log(str); // name=laowang@age=100@sex=%E5%A5%B3
var querystring = require("querystring");var obj = {name:"laowang",age:100,sex:"女"};var str = querystring.stringify(obj,"@",":");console.log(str); // name:laowang@age:100@sex:%E5%A5%B3
参数1 - 将对象序列号化为字符串参数2 - 指明分隔符,根据分隔符来进行反序列化,默认 &参数3 - 指明修饰属性和属性值的连接符,默认 =
var querystring = require("querystring");var str = querystring.parse("name=laowang&age=100&sex=%E5%A5%B3");console.log(str); // { name: 'laowang', age: '100', sex: '女' }
var querystring = require("querystring");var str = querystring.parse("name=laowang@age=100@sex=%E5%A5%B3", "@");console.log(str); // { name: 'laowang', age: '100', sex: '女' }
var querystring = require("querystring");var str = querystring.parse("name:laowang@age:100@sex:%E5%A5%B3","@",":");console.log(str); // { name: 'laowang', age: '100', sex: '女' }
data - 字符串数据
var querystring = require("querystring");var str = querystring.escape("<h1>哈哈哈</h1>");console.log(str); // %3Ch1%3E%E5%93%88%E5%93%88%E5%93%88%3C%2Fh1%3Evar str1 = querystring.unescape(str);console.log(str1); // <h1>哈哈哈</h1>
作者 wendy
2019 年 1月 21日