json对象、json字符串的区别和相互转换

开发时,json字符串和json对象傻傻分不清楚,ajax异步请求后,会根据返回的data值判断请求是否成功,访问data.msg会提示‘undefined’,将data转换为json对象便可。html

1、json对象、json字符串的区别web

一、json对象ajax

json对象,json对象的属性能够用对象.属性调用。json

json对象的console异步

这里写图片描述

经过console能够明显的看到:
*json对象的console.log()和单独使用console控制台输出json对象,结果都是object;
*json对象的属性访问:对象.属性
*json对象的类型能够经过typeof()查看,类型为object;svg

二、json字符串调试

json字符串是一个用单引号或者双引号引发来的字符串,由于字符串的格式符合json的格式,因此叫作json字符串。xml

json字符串的consolehtm

这里写图片描述

经过console能够明显的看到:
*json字符串的console.log()输出为{“name”:”静”,”age”:”19”,”sex”:”女”},若是经过外部否有单双引号来判别是jso字符串仍是json对象,这里很容易被误导。
单独使用console控制台输出json字符串,结果”{“name”:”静”,”age”:”19”,”sex”:”女”}”;
*json字符串无属性值,若是误觉得是json对象,经过字符串.属性访问的,结果是undefined,须要将json字符串转换为json对象便可访问;
*json对象的类型能够经过typeof()查看,类型为string;对象

2、json字符串和json对象的转换

一、json字符串转json对象,调用parse方法

这里写图片描述

二、json对象转为json字符串,调用JSON.stringify()方法

这里写图片描述

3、题外话

调试时,涉及到html标签,console.log()等网页会自动解析html标签,能够将内容打印到文件中,这样既不会被解析,也能够更直观的查看内容