您的位置:首页 > Web前端 > JavaScript

JSON数据格式学习笔记

2015-04-26 22:36 375 查看
详细信息见:JSON官网http://www.json.org/
JSON 基本定义
l JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)

l JSON 是轻量级的文本数据交换格式

l JSON 独立于语言 *

l JSON 具有自我描述性,更易理解

JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。

JSON基本语法:
l 数据在名称/值对中

l 数据由逗号分隔

l 花括号保存对象(花括号可以理解为一个容器)

l 方括号保存数据

JSON的值可以是:
· 数字(整数或浮点数)
· 字符串(在双引号中)
· 逻辑值(true或 false)
· 数组(在方括号中)
· 对象(在花括号中)
· null
JSON 对象
· JSON 对象在花括号中书写:
· 对象可以包含多个名称/值对:

{ "firstName":"John" ,"lastName":"Doe" }

JSON 数组
· JSON 数组在方括号中书写:
· 数组可包含多个对象:

{
"employees": [
{ "firstName":"John" ,"lastName":"Doe" },
{ "firstName":"Anna" ,"lastName":"Smith" },
{ "firstName":"Peter" ,"lastName":"Jones" }
]
}

在上面的例子中,对象 "employees" 是包含三个对象的数组。每个对象代表一条关于某人(有姓和名)的记录。
JSON 文件
· JSON 文件的文件类型是 ".json"
· JSON 文本的 MIME 类型是 "application/json"

JSON与XML区别:
l XML里在元素的开始和结尾处有尖括号和标签名:JSON使用花括号,而且只在数据的开始和结束时使用。

l JSON更简练。

l JSON可以在JavaScript里简单的传递到eval()方法里使用

l JSON里有数组{每个元素没有自己的名称}

l 在XML里可以对一个元素使用任意想要的名称,在JSON里不能使用Javascript里的保留字

JAVA解析JSON:
1、JSON-java最重要的类有三个。

JSONObject : 包装一个map。用来表示一个{k:v,k2:v2,k3:[1,2]}形式的json数据

JSONArray :包装一个ArrayList。用来表示一个[1,2,{k:v}]形式的json数据

JSONTokener:包装一个Reader。用来存储、读取、操作一个表示JSON数据的字符串

2、原理

1、JSONObject和JSONArray都可以用一个JSONTokener作为构造参数去实例化。

2、解析时可能会产生多个JSONObject或者JSONArray。但是他们都是操作同一个JSONTokener。

3、JSONObject和JSONArray可以分别通过JSONTokener提供的方法解析出对方。可以实现嵌套。

参考:http://www.w3school.com.cn/json/
http://www.json.org/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: