JSON :
概念: JavaScript object Notation
Javascript对象表示法
json现在多用于存储和交换文本信息的语法;进行数据的传输;
JSON比XML更小、更快,更易解析。
语法:
基本规则
数据在名称/值对中: json数据是由键值对构成的
键用引号(单双都行)引起来,也可以不使用引号
值得取值类型:
- 数字(整数或浮点数)
- 字符串(在双引号中)
- 逻辑值(true 或false)
- 数组(在方括号中) {“persons”:[{},{}]}
- 对象(在花括号中) {" address":{“province” : “陕西” …}
- null
数据由逗号分隔:多个键值对由逗号分隔
花括号保存对象:使用 { } 定义json格式
方括号保存数组:[ ]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
//1.定义基本格式
var person = {"name":"张三",age:23,'gender':true};
// alert(person)
//2.嵌套格式 {}-->[]
var persons = {"persons":[{"name":"张三","age":23,"gender":true},
{"name":"李四","age":22,"gender":true},
{"name":"王五","age":24,"gender":true}]
};
// alert(persons);
//3.嵌套格式 []-->{}
var ps = [{"name":"张三","age":23,"gender":true},
{"name":"李四","age":22,"gender":true},
{"name":"王五","age":24,"gender":true}]
</script>
</head>
<body>
</body>
</html>
获取值
<script>
//1.定义基本格式
var person = {"name":"张三",age:23,'gender':true};
//获取name的值
var name = person.name;
//或
var name1 = person["name"];
//2.嵌套格式 {}-->[]
var persons = {"persons":[{"name":"张三","age":23,"gender":true},
{"name":"李四","age":22,"gender":true},
{"name":"王五","age":24,"gender":true}]
};
//获取王五
var name2 = persons.persons[2].name;
alert(name2);
//3.嵌套格式 []-->{}
var ps = [{"name":"张三","age":23,"gender":true},
{"name":"李四","age":22,"gender":true},
{"name":"王五","age":24,"gender":true}]
//获取李四
alert(ps[1].name)
</script>
循环获取数据值
<script>
var person = {"name":"张三",age:23,'gender':true};
var ps = [{"name":"张三","age":23,"gender":true},
{"name":"李四","age":22,"gender":true},
{"name":"王五","age":24,"gender":true}]
//获取person对象中所有键和值
//for in循环
for (var key in person){
alert(key+":"+person[key]);
}
//获取ps中的所有值
for (var i=0;i<ps.length;i++){
var p = ps[i];
for (var key in p){
alert(key+":"+p[key]);
}
}
</script>