1. JSON 数据
1.1 JSON 是什么
- JSON(JavaScript Object Notation) 是一种
轻量级的数据交换格式
- JSON 格式适用于
服务器端
和Javascript客户端交互
- JSON 是基于
纯文本的数据格式
浏览器的 JSON 插件使用
xml
<student>
<name>tom</name>
<age>20</age>
<sex>男</sex>
</student>
{
"student":{
"name":"tom",
"age":20,
"sex":"男"
}
}
1.2 JSON 数据的类型


1.3 JSON 的语法
var student = {
"name":"Tom",
"age":"18",
"sex":"男"
}
1.4 JSON 数据的常见操作方法
var product = {
"pName":"IPhoneX","Price":"8000","Color":"red"}
alert('价格'+ product.Price)
alert('价格'+ product["Price"])
for(key in JSONobj){
console.log(JSONobj[key]);
}
1.5 复杂的 JSON 对象
var students ={
"data": [
{
"name":"Tom","age":18,"sex":"男"},
{
"name":"Jack","age":22,"sex":"男"},
{
"name":"Mary","age":19,"sex":"女"},
]
}
1.6 获取 JSON 数据练习
- 根据提供的
json 数据
,获取所有雅芳产品的总数
var products = {
"data": [
{
"type": "【非自营】",
"imgPath": "http://p4.jmstatic.com/product/005/175/5175404_std/5175404_350_350.jpg",
"title": "Dior迪奥香水小样套装Q版5ml*4 甜心+魅惑+真我浓香+真我淡香",
"price": "115",
"brand": "迪奥"
},
{
"type": "【非自营】",
"imgPath": "http://p4.jmstatic.com/product/005/121/5121684_std/5121684_350_350.jpg",
"title": "Dior迪奥香水小样套装Q版 【白礼盒】(花漾+魅惑+真我5ml)",
"price": "85",
"brand": "迪奥"
},
{
"type": "【自营】",
"imgPath": "http://p3.jmstatic.com/product/004/012/4012938_std/4012938_350_350.jpg",
"title": "迪奥小姐花漾淡香氛5ml",
"price": "80",
"brand": "迪奥"
},
{
"type": "【自营】",
"imgPath": "http://p3.jmstatic.com/product/004/012/4012938_std/4012938_350_350.jpg",
"title": "克丽丝汀迪奥迪奥小姐花漾淡香水(又名淡香氛) 5ml",
"price": "89",
"brand": "迪奥"
},
...
]
}
var count = 0
for(key in products['data']){
if(products['data'][key].brand == '雅芳') {
count++
}
}
alert('雅芳商品总数为:' + count)
2. JSON 数据的实战应用
2.1 DOM 加载 JSON 对象

<style media="screen">
*{
margin: 0;padding: 0;}
ul{
list-style: none;}
li{
width: 300px;
height: 400px;
border: 1px solid #ccc;
padding: 10px;
float: left;
margin: 10px;
}
h4{
color: #f00}
img{
width: 100%}
p{
font-weight: 700}
</style>
<script>
var products = {
"data": [
{
"type": "【非自营】",
"imgPath": "http://p4.jmstatic.com/product/005/175/5175404_std/5175404_350_350.jpg",
"title": "Dior迪奥香水小样套装Q版5ml*4 甜心+魅惑+真我浓香+真我淡香",
"price": "115",
"brand": "迪奥"
},
{
"type": "【非自营】",
"imgPath": "http://p4.jmstatic.com/product/005/121/5121684_std/5121684_350_350.jpg",
"title": "Dior迪奥香水小样套装Q版 【白礼盒】(花漾+魅惑+真我5ml)",
"price": "85",
"brand": "迪奥"
},
{