【01】JSON基本信息
2015-12-11 14:52
288 查看
[魔芋注] 就是一种格式,数据组合的格式。
JSON:JavaScript 对象表示法(JavaScript Object Notation)。
JSON 是存储和交换、传输(数据)文本信息的语法(格式)。类似 XML。
JSON 比 XML 更小、更快,更易解析。
JSON 通常用于服务端向网页传递数据 。和 XML 一样,JSON 也是基于纯文本的数据格式。除了字符 ",\,/ 和一些控制符(\b,\f,\n,\r,\t)需要编码外,其他 Unicode 字符可以直接输出。下图是一个 String 的完整表示结构:
JSON 独立于语言 * 它不单单适用于JavaScript,也适用于其他语言,如php,Java。
JSON 具有自我描述性,更易理解
* JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。* JSON 使用 JavaScript 语法,但是 JSON 格式仅仅是一个文本。文本可以被任何编程语言读取及作为数据格式传递。
这个 employee 对象是包含 3 个员工记录(对象)的数组。
由于这种相似性,无需解析器,JavaScript 程序能够使用内建的 eval() 函数,用 JSON 数据来生成原生的 JavaScript 对象。
结果:
JSON 具有“自我描述性”(人类可读)
JSON 具有层级结构(值中存在值)
JSON 可通过 JavaScript 进行解析
JSON 数据可使用 AJAX 进行传输
更短
读写的速度更快
能够使用内建的 JavaScript eval() 方法进行解析
使用数组
不使用保留字
使用 XML DOM 来循环遍历文档
读取值并存储在变量中
用 eval() 处理 JSON 字符串
第二种类型是序列(sequence),也就是若干个相关的数据按照一定顺序并列在一起,又叫做数组(array)或列表(list),比如“北京”,“上海”。
第三种类型是映射(mapping),也就是一个名/值对(Name/value),即数据由一个名词,还有一个与之相应的值,这又称为散列(hash)或字典(dictionary),比如:“首都”:“北京”
2,语法过于严谨,必须遵循JSON语法的四个原则。
XML是标准通用标记语言(SGML)的子集,非常适合Web传输。
Serialize
Serialize 是一种类似于JSON的数据格式,但是PHP的serialize是将变量序列化,返回一个具有变量类型和结构的字符串表达式。
Array()
基本数据类型,不能用于数据的传输和交替。
JSON:JavaScript 对象表示法(JavaScript Object Notation)。
JSON 是存储和交换、传输(数据)文本信息的语法(格式)。类似 XML。
JSON 比 XML 更小、更快,更易解析。
JSON 通常用于服务端向网页传递数据 。和 XML 一样,JSON 也是基于纯文本的数据格式。除了字符 ",\,/ 和一些控制符(\b,\f,\n,\r,\t)需要编码外,其他 Unicode 字符可以直接输出。下图是一个 String 的完整表示结构:
什么是 JSON ?
JSON 是轻量级的文本数据交换格式JSON 独立于语言 * 它不单单适用于JavaScript,也适用于其他语言,如php,Java。
JSON 具有自我描述性,更易理解
* JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。* JSON 使用 JavaScript 语法,但是 JSON 格式仅仅是一个文本。文本可以被任何编程语言读取及作为数据格式传递。
实例
{
"employees":[{
"firstName":"Bill",
"lastName":"Gates"
},{
"firstName":"George",
"lastName":"Bush"
},{
"firstName":"Thomas",
"lastName":"Carter"
}]
}
这个 employee 对象是包含 3 个员工记录(对象)的数组。
JSON - 转换为 JavaScript 对象
JSON 文本格式在语法上与创建 JavaScript 对象的代码相同。由于这种相似性,无需解析器,JavaScript 程序能够使用内建的 eval() 函数,用 JSON 数据来生成原生的 JavaScript 对象。
<html>
<body>
<h2>在JavaScript中创建 JSON 对象</h2>
<p>
Name:<span id="jname"></span><br />
Age:<span id="jage"></span><br />
Address:<span id="jstreet"></span><br />
Phone:<span id="jphone"></span><br />
</p>
<script type="text/javascript">
var JSONObject={
"name":"Bill Gates",
"street":"Fifth Avenue New York 666",
"age":56,
"phone":"555 1234567"};
document.getElementById("jname").innerHTML=JSONObject.name;
document.getElementById("jage").innerHTML=JSONObject.age;
document.getElementById("jstreet").innerHTML=JSONObject.street;
document.getElementById("jphone").innerHTML=JSONObject.phone;
</script>
</body>
</html>
结果:
类似 XML
JSON 是纯文本JSON 具有“自我描述性”(人类可读)
JSON 具有层级结构(值中存在值)
JSON 可通过 JavaScript 进行解析
JSON 数据可使用 AJAX 进行传输
相比 XML 的不同之处
没有结束标签更短
读写的速度更快
能够使用内建的 JavaScript eval() 方法进行解析
使用数组
不使用保留字
为什么使用 JSON?
对于 AJAX 应用程序来说,JSON 比 XML 更快更易使用:使用 XML
读取 XML 文档使用 XML DOM 来循环遍历文档
读取值并存储在变量中
使用 JSON
读取 JSON 字符串用 eval() 处理 JSON 字符串
JSON 起源
第一种类型是标量(scalar),也就是一个单独的字符串(string)或数字(numbers),比如“北京”这个单独的词。第二种类型是序列(sequence),也就是若干个相关的数据按照一定顺序并列在一起,又叫做数组(array)或列表(list),比如“北京”,“上海”。
第三种类型是映射(mapping),也就是一个名/值对(Name/value),即数据由一个名词,还有一个与之相应的值,这又称为散列(hash)或字典(dictionary),比如:“首都”:“北京”
JSON的缺点:
1,要求字符集必须是Unicode,受约束性强。2,语法过于严谨,必须遵循JSON语法的四个原则。
相关:
XMLXML是标准通用标记语言(SGML)的子集,非常适合Web传输。
Serialize
Serialize 是一种类似于JSON的数据格式,但是PHP的serialize是将变量序列化,返回一个具有变量类型和结构的字符串表达式。
Array()
基本数据类型,不能用于数据的传输和交替。
相关文章推荐
- JSON使用Error反序列化忽略非法日期
- js判断接入设备
- js时间格式转换
- 10007---JavaScript--函数
- js里获取表单输入值进行比对的方法
- js---SM
- JSON使用TraceWriter反序列化获取调试日志
- ExtJs4 笔记(5) Ext.Button 按钮
- JSON使用IContractResolver序列化实现属性名骆驼命名法
- js中的document.write
- 百宝云Json与数组命令教程
- 10006---JavaScript--对象
- JSON使用TypeNameHandling序列化与反序列化.NET类型和声明类型
- JS替换非正则替换
- 网易前端微专业,JavaScript程序设计基础篇:函数
- jsp表单的客户端验证
- json_encode 数值类型转换
- JS初学的一些易错的知识点
- jsp编写猜数字游戏
- jsp版计算器