如何将JavaScript对象编码为JSON?

如何将JavaScript对象编码为JSON?,javascript,jquery,json,checkbox,hashtable,Javascript,Jquery,Json,Checkbox,Hashtable,有没有一种将JavaScript对象编码为JSON的好方法 我有一个键值对列表…其中名称来自复选框,根据复选框是否选中,值为true或false: var values = {}; $('#checks :checkbox').each(function() { values[this.name]=this.checked; }); 我想将这些值传递到JSON对象中,以便存储到cookie中以呈现一个表(将根据用户检查的内容添加列) 有人知道解决办法吗 我认为您可以使用: 所有主要浏览器现在

有没有一种将JavaScript对象编码为JSON的好方法

我有一个键值对列表…其中名称来自复选框,根据复选框是否选中,值为true或false:

var values = {};
$('#checks :checkbox').each(function() { values[this.name]=this.checked; }); 
我想将这些值传递到JSON对象中,以便存储到cookie中以呈现一个表(将根据用户检查的内容添加列)

有人知道解决办法吗

我认为您可以使用:


所有主要浏览器现在都包括本机JSON编码/解码

// To encode an object (This produces a string)
var json_str = JSON.stringify(myobject); 

// To decode (This produces an object)
var obj = JSON.parse(json_str);
请注意,只有有效的JSON数据才会被编码。例如:

var obj = {'foo': 1, 'bar': (function (x) { return x; })}
JSON.stringify(obj) // --> "{\"foo\":1}"
有效的JSON类型包括:对象、字符串、数字、数组、
true
false
null

一些JSON资源:


我把它放在了警报()中,但什么都没有appears@daniellanger-根据您的评论,这是答案。你需要做一些调试,看看为什么事情没有显示出来,我怎样才能将它保存到一个文件中/作为cookie存储?IE 10给出:JavaScript运行时错误:“JSON”未定义。也就是说,没有json对象这样的东西。您是在尝试将值序列化为json,还是在尝试将值传递到JavaScript对象?我希望能够创建一个json文件来存储复选框的值,以便将用户的选择保存在cookie中。我是json新手,所以我不知道我想要的是哪一个可能的副本,IE7及以下版本需要JSON2.js库,并且本机不支持此API。它们在javascript中被称为“对象”。但是,布尔值可以用JSON表示。
var obj = {'foo': 1, 'bar': (function (x) { return x; })}
JSON.stringify(obj) // --> "{\"foo\":1}"