将json字符串转换成json对象的方法。在数据传输的过程中,json是以文本即字符串的形式传输的,而JS是对JSON对象进行操作的,所以JSON对象和JSON字符串的相互转换是关键。
例如:
JSON字符串:
var str1={ name: cxh , sex : man } ;
JSON对象:
var str2={ name: cxh , sex : man };
一、JSON字符串转换为JSON对象
要使用上面的str1,必须首先使用以下方法将其转换为JSON对象:
//从JSON字符串转换为JSON对象
var obj=eval(( str ));
或者
var obj=str . parse JSON();//从JSON字符串转换为JSON对象
或者
var obj=JSON . parse(str);//从JSON字符串转换为JSON对象
然后,你可以这样读:
alert(obj . name);
alert(obj . sex);
注意:如果obj原本是一个JSON对象,使用eval()函数转换后(即使转换多次)仍然是JSON对象,但是使用parseJSON()函数处理后会出现问题(抛出语法异常)。
二、可以使用toJSONString()或者全局方法JSON.stringify()将JSON对象转化为JSON字符串。
例如:
var last=obj . tojsonstring();//将JSON对象转换成JSON字符
或者
var last=JSON . stringify(obj);//将JSON对象转换成JSON字符
警报(最后一个);
注意:
以上方法中,除了js自带的eval()函数,其他方法都来自json.js包。新版本的JSON修改了API,将JSON.stringify()和JSON.parse()注入Javascript的内置对象。前者变成Object.toJSONString(),后者变成String.parseJSON()。提示如果找不到tojsonString()和parseJSON()方法,那么您的JSON包版本太低。
PS:本站还提供了几款功能十分强大的json解析、转换与格式化工具供大家选择使用,相信对于大家接下来的json格式数据处理会有所帮助:
在线JSON代码检查、检查、美化和格式化工具:
http://tools.jb51.net/code/json
在线XML/JSON转换:
http://tools.jb51.net/code/xmljson
Json在线代码格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat
c语言风格/HTML/CSS/json代码格式化美化工具:
http://tools.jb51.net/code/ccode_html_css_json