JQuery将字符串转为json对象的四种方法:
第一种:用jquery里自带的$.parseJSON函数:
var jsonstr1="{\"id\":\"1\",\"name\":\"John\"}";
var obj=$.parseJSON(jsonstr1);
alter(obj.id);
***用$.parseJSON来把字符串转换为json对象,对字符串要求极高,字符串里的属性全部用双引号来包裹,并且不能用单引号。
第二种:js里的方法,用eval把字符串转换为json:
//这三种写法都可以用eval来转换
var jsonstr1="{\"id\":\"1\",\"name\":\"John\"}";
var jsonstr1={'id':'1','name':'John'};
var jsonstr1={id:1,name:'John'};
var obj=eval('('+jsonstr1+')');
alert(obj.id);
***在用eval把字符串转为json时,需要在字符串外包裹一对小括号;
第三种:使用浏览器自带的JSON.parse:
var jsonstr1="{\"id\":\"1\",\"name\":\"John\"}";
var obj=JSON.parse(jsonstr1)
alert(obj.id);
***Firefox,chrome,opera等浏览器都支持JSON.parse,但IE6、IE7不支持,并且对要转换的字符串要求也比较高。
第四种:JSON官方提供的方法:
www.json.org 提供了一个json.js,可以用parse()方法来把字符串转换为json,用stringify()来把json转换为字符串;