jQuery.parseJSON('{"name":"John"}')
将字符串表示转换为对象
但我希望相反。对象将转换为JSON字符串
我收到了一个链接http://www.devcurry.com/2010/03/convert-javascript-object-to-json.html
但它需要有json2.js jQuery有一个本机方法来做到这一点吗?
答案 0 :(得分:181)
jQuery只在调用本机浏览器方法window.JSON.parse()
之前进行一些regexp检查。如果不可用,则会使用eval()
或更准确new Function()
来创建Javascript对象。
与JSON.parse()
相反的是JSON.stringify()
,它将Javascript对象序列化为字符串。 jQuery没有自己的功能,你必须使用浏览器内置版本或来自http://www.json.org的json2.js
JSON.stringify()
适用于所有主流浏览器,但为了与旧版浏览器兼容,您仍然需要这种后备功能。
答案 1 :(得分:12)
用于调试目的的Object.toSource()也很有用,您可以在其中显示对象及其属性以进行调试。这是一个通用的Javascript(不是jQuery)函数,但它只适用于“现代”浏览器。
答案 2 :(得分:4)
将JavaScript对象转换为json数据
$("form").submit(function(event){
event.preventDefault();
var formData = $("form").serializeArray(); // Create array of object
var jsonConvertedData = JSON.stringify(formData); // Convert to json
consol.log(jsonConvertedData);
});
您可以使用http://jsonlint.com
来验证json数据答案 3 :(得分:2)