将对象转化为query是在前端或后台请求时常见的操作,Node.js提供了将对象转化为query的实现方式。下面是完整攻略:
使用querystring
模块
querystring
模块提供了将对象转化为query的方法stringify()
和将query转化为对象的方法parse()
。
将对象转化为query:
const querystring = require('querystring');
const obj = { name: 'Alice', age: 18 };
const query = querystring.stringify(obj);
console.log(query); // 'name=Alice&age=18'
将query转化为对象:
const querystring = require('querystring');
const query = 'name=Alice&age=18';
const obj = querystring.parse(query);
console.log(obj); // { name: 'Alice', age: '18' }
使用qs
模块
qs
模块是在querystring
模块基础上进行了扩展,提供了更多的功能,并且性能更好。qs
模块的使用方法与querystring
类似。
将对象转化为query:
const qs = require('qs');
const obj = { name: 'Bob', age: 20 };
const query = qs.stringify(obj);
console.log(query); // 'name=Bob&age=20'
将query转化为对象:
const qs = require('qs');
const query = 'name=Bob&age=20';
const obj = qs.parse(query);
console.log(obj); // { name: 'Bob', age: '20' }
需要注意的是,qs
模块默认使用&
作为分隔符,querystring
模块默认使用&
或;
作为分隔符,如果需要使用;
作为分隔符,需要设置querystring.separator
的值。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:node将对象转化为query的实现方法 - Python技术站