json数据格式
json定义
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 JSON 语法是 JavaScript 对象表示法语法的子集。
- JSON:JavaScript 对象表示法(JavaScript Object Notation)。
- JSON 是存储和交换文本信息的语法。类似 XML。
- JSON 比 XML 更小、更快,更易解析。
json结构
- 对象:{“name”:“Michael”,“age”:24}
- 数组:[{“name”:“Michael”,“age”:24},{“name”:“Tom”,“age”:25}]
对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,…}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。
数组:数组在js中是中括号“[]”括起来的内容,数据结构为 [“java”,“javascript”,“vb”,…],取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。
- 数据在名称/值对中:名称是字符串,使用双引号表示。值可以是:数字(整数或浮点数),字符串(在双引号中),数组(在方括号中),对象(在花括号中),true/false/null。
- 数据由逗号分隔:
- 花括号保存对象:对象可以包含各种数据,包括数组。
- 方括号保存数组:数字可以包含对象。
访问json数据的方法
//例子
var obj={name:"Michael",age:24};
obj.name;//方式1:和java语言中访问对象的属性是一样的。
alert(obj["name"]) //方式2:和js中数组的访问方式是一样的。
JSON和XML的比较
-
1.可读性
JSON和XML的可读性可谓不相上下,一边是简易的语法,一边是规范的标签形式,很难分出胜负。
-
2.可扩展性
XML天生有很好的扩展性,JSON当然也有,没有什么是XML能扩展,而JSON却不能。不过JSON在Javascript主场作战,可以存储Javascript复合对象,有着xml不可比拟的优势。
-
3.编码难度
XML有丰富的编码工具,比如Dom4j、JDom等,JSON也有提供的工具。无工具的情况下,相信熟练的开发人员一样能很快的写出想要的xml文档和JSON字符串,不过,xml文档要多很多结构上的字符。