qs.parse()、qs.stringify()、JSON.parse()、JSON.stringify()使用方法
1 qs.parse()
将url中的参数字符串转换成json对象。
var qs = require('qs');
var url = 'method=query_sql_dataset_data&projectId=85&appToken=7d22e38e-5717-11e7-907b-a6006ad3dba0';
console.log(qs.parse(url));
控制台输出为:
{ method: 'query_sql_dataset_data',
projectId: '85',
appToken: '7d22e38e-5717-11e7-907b-a6006ad3dba0' }
2 qs.stringify()
将json对象转换成url中的参数字符串。
var qs = require('qs');
let obj = {
method: "query_sql_dataset_data",
projectId: "85",
appToken: "7d22e38e-5717-11e7-907b-a6006ad3dba0",
datasetId: " 12564701"
};
console.log(qs.stringify(obj))
控制台输出为:
method=query_sql_dataset_data&projectId=85&appToken=7d22e38e-5717-11e7-907b-a6006ad3dba0&datasetId=%2012564701
3 JSON.parse()
将一个字符串中解析成json对象,ps:对于字符串,单引号写在{}
外,每个属性都必须双引号,否则会抛出异常
var str = '[{"field":"thedate","v1":"20170102"},{"field":"rev_type","v1":"大数据收入"},{"field":"thismonth","v1":"201708"},{"field":"nextmonth","v1":"201709"},{"field":"depart_type","v1":"leader"},{"field":"admin_emp_id","v1":"role"}]';
console.log(JSON.parse(str));
控制台输出为:
[ { field: 'thedate', v1: '20170102' },
{ field: 'rev_type', v1: '大数据收入' },
{ field: 'thismonth', v1: '201708' },
{ field: 'nextmonth', v1: '201709' },
{ field: 'depart_type', v1: 'leader' },
{ field: 'admin_emp_id', v1: 'role' } ]
4 JSON.stringify()
将一个json对象转换成字符串,生成的字符串全都是双引号。
var arr=[
{field: "thedate", v1: "20170102"},
{field: "rev_type", v1: "大数据收入"},
{field: "thismonth", v1: "201708"},
{field: "nextmonth", v1: "201709"},
{field: "depart_type", v1: "leader"},
{field: "admin_emp_id", v1: "role"}
]
console.log(JSON.stringify(arr))
控制台输出为:
[{"field":"thedate","v1":"20170102"},{"field":"rev_type","v1":"大数据收入"},{"field":"thismonth","v1":"201708"},{"field":"nextmonth","v1":"201709"},{"field":"depart_type","v1":"leader"},{"field":"admin_emp_id","v1":"role"}]
5 总结
qs是用于json对象与查询字符串之间进行转换。
JSON是用于json对象与json格式的字符串之间进行转换。
parse()方法的返回值都是json对象。