考虑中文及特殊字符
const obj = { a: 1, b: 2 };
// 输出 a=1&b=2
1 Object.keys
function toQueryString(obj) {
return (Object.keys(obj).map(key => `${key}=${obj[key]}`)).join('&');
}
2 Object.entries
function toQueryString(obj) {
return (Object.entries(obj).map(item => `${item[0]}=${item[1]}`)).join('&');
}
3 for in
function toQueryString(obj) {
const result = [];
for (const key in obj) {
result.push(`${key}=${obj[key]}`);
}
return result.join('&')
}
4 JSON.stringify
function toQueryString(value) {
return JSON.stringify(value)
.replace(/{|}|\"/g, '')
.replace(/\:/g, '=')
.split(',')
.join('&');
}