JSON字符串与JSON对象的区别

来源:互联网 发布:淘宝外用增大药有用吗 编辑:程序博客网 时间:2024/05/21 22:38

Q:什么是"JSON字符串",什么是"JSON对象",两者的区别?

a.JSON对象是直接可以使用JQuery操作的格式

var str2 = { "name": "deluyi", "sex": "man" };

b.JSON字符串仅仅只是一个字符串,一个整体,不截取的话没办法取出其中存储的数据,不能直接使用

var str1 = '{ "name": "deyuyi", "sex": "man" }';

Q:将"JSON字符串"转化为"JSON对象"的方法?

一:使用$.parseJSON(str)

//由JSON字符串转换为JSON对象    var str='{ "name": "John" }';    var obj = jQuery.parseJSON(str)    alert("1"+ obj.name);
ps:此种方式仅支持标准格式:var str='{ "name": "John" }';


二:JSON.parse(str)

var str = '{ "name": "mady", "age": "24" }';        var obj = JSON.parse(str);        alert(obj.name);

ps:此种方式仅支持标准格式:var str='{ "name": "John" }';

 

三:使用eval('('+str+')');

//由JSON字符串转换为JSON对象    var str='{ "name": "John" }';    var obj = eval('(' + str + ')');     alert( obj.name);    var str2="{ 'name': 'John' }";    var obj2 = eval('(' + str2 + ')');     alert( obj2.name);    var str3="{ name: 'John' }";    var obj3 = eval('(' + str3 + ')');     alert( obj3.name);

以上均会输出结果“john”。

 Eval方式可以转换以下标准和非标准格式字符串:

  var str="{ 'name': 'John' }";   var str2='{ "name": "John" }';   var str3="{ name: 'John' }";

Q:将"JSON对象"转化为"JSON字符串"的方法?

一:使用全局方法JSON.stringify()与toJSONString()

例如:

var last=obj.toJSONString(); //将JSON对象转化为JSON字符

或者

var last=JSON.stringify(obj); //将JSON对象转化为JSON字符

alert(last);


Q:读取JSON对象的方法?
var str2 = { "name": "mady", "sex": "man" };alert(str2.name);//弹出” mady”

转自http://www.cnblogs.com/cstao110/p/3762056.html
原创粉丝点击