1> 概念
JSON JavaScript 对象表示法(JavaScript Object Notation) 是一种存储数据的方式。
2> 创建JSON对象
var user = {"uname":"admin","upwd":123456};
这样就创建了一个JSON 对象
JSON对象由 名称/值对组成 名称和值之间用冒号:隔开
名称必须用双引号" 包含起来
值可以是任意javascript数据类型,字符串,布尔,数字 ,数组甚至是对象
不同的名称/值对之间用 逗号 , 隔开
3> 访问JSON对象
通过 点. 访问JSON对象的属性
var user = {"uname":"admin","upwd":123456};
console.info(user.uname);
4> 创建JSON数组
var userArr=
[
{"uname":"admin","upwd":123},
{"uname":"jack","upwd":111},
{"uname":"rose","upwd":222},
{"uname":"tom","upwd":333}
];
5> 访问JSON数组
userArr[0].uname 访问数组第1个对象的uname属性值
6> JSON对象与JavaScript对象
JavaScript对象 分内置对象(Number,String,Array,Date,Math)和自定义对象
JSON就是自定义对象,只不过是以JSON这样的数据组织方式表达出来
所以不存在JSON对象与JavaScript对象的转换问题
7> 字符串转为JSON对象
JSON 的常规用途是同 web 服务器进行数据传输。
在从 web 服务器接收数据时,数据永远是字符串。
通过 JSON.parse() 解析数据,这些数据会成为 json 对象。
var str='{ "name":"Bill Gates", "age":62, "city":"Seattle"}';
console.info(typeof str);
var obj = JSON.parse(str);
通过字符串拼接得到一个JSON结构的字符串,并不是一个JSON对象。
需要通过eval转换得到
转换的时候注意,eval 函数要以( 开头,)结尾
或者使用JQuery的$.parseJSON转换函数
var json对象 = eval("("+json格式的字符串+")");
8> JSON 对象转换为字符串
json 对象因为是一个javascript对象,所以如果直接打印的话,看不到里面的内容。
有时候要看看这个对象是不是我们期望的,所以需要通过 JSON.stringify 函数把它转换为 字符串
var json字符串 = JSON.stringify(json对象);