我正在尝试查找有关如何序列化对象以查询字符串格式的信息,但是我所有的搜索都淹没了关于如何采用另一种方法(字符串/表格/任何以JSON格式)的结果。
我有
{ one: 'first', two: 'second' }
而且我要
?one=first&two=second
有什么好方法吗?我不在乎插件或其他什么-如果我找到的代码不是插件,无论如何我都可能会将其重写为一个...
您想要的$.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
快速的非JQuery功能...
function jsonToQueryString(json) {
return '?' +
Object.keys(json).map(function(key) {
return encodeURIComponent(key) + '=' +
encodeURIComponent(json[key]);
}).join('&');
}
请注意,这不处理数组或嵌套对象。
另一个选项可能是node-querystring。
npm
和均可使用bower
,这就是为什么我一直在使用它。
另外,YUI具有http://yuilibrary.com/yui/docs/api/classes/QueryString.html#method_stringify。
例如:
var data = { one: 'first', two: 'second' };
var result = Y.QueryString.stringify(data);
本文地址:http://javascript.askforanswer.com/xuliehuaduixiangyizaijavascript-jqueryzhongchaxunzifuchuanzhongfu.html
文章标签:javascript , jquery , query-string , serialization
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!
文章标签:javascript , jquery , query-string , serialization
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!
评论已关闭!