我如何将JavaScript对象编码为JSON?

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

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

var values = {}; $('#checks :checkbox').each(function() { values[this.name]=this.checked; }); 

我想传递这些值到一个JSON对象,所以存储到一个cookie来呈现一个表(列会根据用户检查)添加。

有谁知道一个解决scheme?

我认为你可以使用JSON.stringify :

 // after your each loop JSON.stringify(values); 

所有主stream浏览器现在都包含本机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}" 

有效的JSONtypes是:对象,string,数字,数组, truefalsenull

一些JSON资源:

  • JSON在Mozilla开发者networking上
  • JSON在维基百科