我试图找到有关如何将对象序列化为查询字符串格式的信息,但我的所有搜索都淹没在如何进行其他操作的结果中(字符串/表单/JSON格式)。
我有过
{ one: 'first', two: 'second' }
我想要
?one=first&two=second
有什么好方法可以做到这一点吗?我不介意插件或诸如此类的东西-如果我找到的代码不是插件,我可能会把它重写成一个插件……
发布于 2010-07-22 20:36:15
你想要$.param()
:http://api.jquery.com/jQuery.param/
具体地说,您需要这样:
var data = { one: 'first', two: 'second' };
var result = $.param(data);
当给出类似这样的东西时:
{a: 1, b : 23, c : "te!@#st"}
$.param
将返回以下内容:
a=1&b=23&c=te!%40%23st
发布于 2015-06-08 19:00:49
对于一个快速的非JQuery函数...
function jsonToQueryString(json) {
return '?' +
Object.keys(json).map(function(key) {
return encodeURIComponent(key) + '=' +
encodeURIComponent(json[key]);
}).join('&');
}
注意,这不处理数组或嵌套对象。
发布于 2013-05-06 02:39:59
另一种选择可能是node-querystring。
它有npm
和bower
两种版本,这就是我一直使用它的原因。
https://stackoverflow.com/questions/3308846
复制相似问题