本文详细解析JSON(JavaScript Object Notation)的定义、轻量级文本格式特性及其与JavaScript语法的兼容性。通过对比XML,阐述JSON在读写速度、文件体积及解析便捷性上的优势,并说明其在AJAX应用中的广泛使用及长期稳定性。
JSON 为何物?
- JSON,全称为 JavaScript Object Notation,意为 JavaScript 对象标记法。
- JSON 是一种轻量级(Light-Meight)、基于文本的(Text-Based)、可读的(Human-Readable)格式。
- JSON 的名称虽含 JavaScript,但意指其语法规则参考了 JavaScript 对象,而非仅限于 JavaScript 语言。
- JSON 对人类与机器而言均易于阅读和书写,相较于 XML(另一种常见数据交换格式),其文件体积更小,因而迅速成为网络流行的交换格式。
- 近年来 JavaScript 已成为浏览器事实上的标准语言,其流行与 JSON 的普及密切相关。
- 因 JSON 基于 JavaScript 对象规则定义,其语法与 JavaScript 定义对象的语法几乎完全一致。
- JSON 格式创始人声明此格式永不升级,意味着该格式具备长期稳定性,10 年前创建的文件,10 年后仍可正常使用,无任何兼容性问题。
JSON - 转换为 JavaScript 对象
JSON 文本格式在语法上与创建 JavaScript 对象的代码相同。
鉴于这种相似性,无需解析器,JavaScript 程序即可利用内建的 eval() 函数,通过 JSON 数据生成原生 JavaScript 对象。
在线实例
通过我们的编辑器,您可以在线编辑 JavaScript 代码,然后点击按钮查看结果:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body>
<h2>JavaScript 创建 JSON 对象</h2>
<p>
网站名称: <span id="jname"></span><br />
网站地址: <span id="jurl"></span><br />
网站 slogan: <span id="jslogan"></span><br />
</p>
<script>
var JSONObject= {
"name":"菜鸟教程",
"url":"www.runoob.com",
"slogan":"学的不仅是技术,更是梦想!"
};
document.getElementById("jname").innerHTML=JSONObject.name
document.getElementById("jurl").innerHTML=JSONObject.url
document.getElementById("jslogan").innerHTML=JSONObject.slogan
</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的定义以及如何使用的文章就介绍到这了,更多相关JSON的定义内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!