使用JSON.stringify()方法即可。
var obj = { 'key': 'value' }; var json_text = JSON.stringify( obj ); // 会返回JSON格式的字符串'"{"key":"value"}"'
JSON字符串可以仅为一个数组。
var obj = [ "value1", "vaule2", "value3" ]; var json_text = JSON.stringify( obj ); // 会返回JSON格式的字符串
包含null时,则如下所示:
var obj = { 'key': null }; var json_text = JSON.stringify( obj ); // 会返回JSON格式的字符串
包含日期类型对象,如下:
var obj = { 'key': new Date() }; var json_text = JSON.stringify( obj ); // 会返回JSON格式的字符串
遇到Object对象的值为函数时,stringfy()方法会自动删除值为函数的这一对键值;其实与其说删除,更形象的说法是:转换过程中忽略这对键值。
var obj = { 'key': function(){ alert("反清复明"); } }; var json_text = JSON.stringify( obj ); // 会返回JSON格式的字符串
若是不想忽略是函数的这对键值,可以在转换前,先将该函数字符串化,最后再将修改后的Object对象转换成JSON字符串。
var obj = { 'key': function(){ alert("反清复明"); } }; obj.key = obj.key.toString(); var json_text = JSON.stringify( obj ); // 会返回JSON格式的字符串