1、JSON概述
(1)JSON是一种轻量级的数据交换格式,功能上类似于XML,但是JSON的数据更新更容易解析,更小、速度更快。
(2)JSON是一种完全独立于编程语言的文本格式(占用空间小,利于传输),因此JSON可以运用于不同的语言中。
2、JSON对象
{
"pname":"小熊饼干",
"price":12.3,
"paddress":"河南省漯河市",
"ptime":"2020-1-10"
}
(1)一共为product对象创建了四个变量,并为变量进行了赋值。
(2)在创建对象时,数值名称必须用双引号,数值是Object类型。
3、JSON数组(多个对象)
[{
"pname":"小熊饼干",
"price":12.3,
"paddress":"河南省漯河市",
"ptime":"2020-1-10"
},
{
"pname":"薯脆",
"price":2.3,
"paddress":"河南省郑州市",
"ptime":"2020-2-10"
},
{
"pname":"可口可乐",
"price":4.00,
"paddress":"河南省郑州市",
"ptime":"2020-1-23"
}
]
(1)该数组中包括了三个元素,每个元素代表一个商品的信息,
(2)花括号中的内容是一个对象,方括号中的内容是一个数组。
(3)值的本身也是一个对象:
supermarket={
"productes":[
{
"pname":"小熊饼干",
"price":12.3,
"paddress":"河南省漯河市",
"ptime":"2020-1-10"
},
{
"pname":"薯脆",
"price":2.3,
"paddress":"河南省郑州市",
"ptime":"2020-2-10"
},
{
"pname":"可口可乐",
"price":4.00,
"paddress":"河南省郑州市",
"ptime":"2020-1-23"
}
],
"address":"河南省周口市"
}
一个超市有多个商品信息。
4、JSON的取值
(1)从对象中取值:
<script> var product={ "pname":"小熊饼干", "price":12.3, "paddress":"河南省漯河市", "ptime":"2020-1-10" }; alert(product.pname); script>
(2)从数组中取值:
<script> var products= [{ "pname":"小熊饼干", "price":12.3, "paddress":"河南省漯河市", "ptime":"2020-1-10" }, { "pname":"薯脆", "price":2.3, "paddress":"河南省郑州市", "ptime":"2020-2-10" }, { "pname":"可口可乐", "price":4.00, "paddress":"河南省郑州市", "ptime":"2020-1-23" } ]; alert(products[1].pname); script>
(3)值为对象的时候的取值方法:
<script> var supermarket={ "productes":[ { "pname":"小熊饼干", "price":12.3, "paddress":"河南省漯河市", "ptime":"2020-1-10" }, { "pname":"薯脆", "price":2.3, "paddress":"河南省郑州市", "ptime":"2020-2-10" }, { "pname":"可口可乐", "price":4.00, "paddress":"河南省郑州市", "ptime":"2020-1-23" } ], "address":"河南省周口市" }; alert(supermarket.productes[1].pname); script>
5、修改值
<script> var supermarket={ "productes":[ { "pname":"小熊饼干", "price":12.3, "paddress":"河南省漯河市", "ptime":"2020-1-10" }, { "pname":"薯脆", "price":2.3, "paddress":"河南省郑州市", "ptime":"2020-2-10" }, { "pname":"可口可乐", "price":4.00, "paddress":"河南省郑州市", "ptime":"2020-1-23" } ], "address":"河南省周口市" }; supermarket.productes[1].pname="雪碧"; alert(supermarket.productes[1].pname); script>