如何在jQuery中将查询字符串转换为JSON对象

4
这似乎是一件轻而易举的事情,但肯定有一个内部js方法或jquery方法可以将这样的字符串:

intTime=1324443870&fltOriginalAmount=0.00&strOriginalCurrency=GBP

...然后转换成JSON对象,包含许多其他值?

我在这个网站和谷歌上搜寻了一番,但惊讶地没有找到答案......有人知道如何简单完成吗?


2
不存在所谓的“JSON对象”。您是指一个对象还是一个JSON字符串? - Guffa
2个回答

11

jQuery BBQ恰好可以实现这一点。请查看$.deparam"与jQuery.param相反,差不多就是这样。"

> var obj = $.deparam('intTime=1324443870&fltOriginalAmount=0.00&strOriginalCurrency=GBP')
> JSON.stringify(obj)
  '{"intTime":"1324443870","fltOriginalAmount":"0.00","strOriginalCurrency":"GBP"}'

所以jQuery或JS内部没有任何东西?不错的方法,谢谢。 - Alex
据我所知,没有“内置”的方法。 - Matt Ball

2

我使用了这个技巧...

$.parseJSON('{"' + qs.replace(/&/g, '","').replace(/=/g, '":"') + '"}');

demo here http://jsbin.com/niqaw/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接