前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JSON学习笔记

JSON学习笔记

作者头像
李郑
发布2018-03-01 19:03:37
1.2K0
发布2018-03-01 19:03:37
举报
文章被收录于专栏:漫漫全栈路

JSON学习笔记

Web学习笔记之——Json


什么是JSON

JSON: JavaScript Object Notation(JavaScript 对象表示法)

JSON 是轻量级的文本数据交换格式 JSON 独立于语言 * JSON 具有自我描述性,更易理解

JSON 使用 Javascript语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。 目前非常多的动态(PHP,JSP,.NET)编程语言都支持JSON。

优点:

  • JSON 是存储和交换文本信息的语法。类似 XML。
  • JSON 比 XML 更小、更快,更易解析。

与 XML 相同之处

  • JSON 是纯文本
  • JSON 具有”自我描述性”(人类可读)
  • JSON 具有层级结构(值中存在值)
  • JSON 可通过 JavaScript进行解析
  • JSON 数据可使用 AJAX 进行传输

与 XML 不同之处

  • 没有结束标签
  • 更短
  • 读写的速度更快
  • 能够使用内建的 JavaScript eval() 方法进行解析
  • 使用数组
  • 不使用保留字

为什么使用 JSON?

对于 AJAX 应用程序来说,JSON 比 XML 更快更易使用:

使用 XML

  1. 读取 XML 文档
  2. 使用 XML DOM 来循环遍历文档
  3. 读取值并存储在变量中

使用 JSON

  1. 读取 JSON 字符串
  2. 用 eval() 处理 JSON 字符串

JSON 实例

简单实例

这个 sites 对象是包含 3 个站点记录(对象)的数组。

代码语言:javascript
复制
{
"sites": [
{ "name":"Derwer" , "url":"www.derwer.com" }, 
{ "name":"google" , "url":"www.google.com" }, 
{ "name":"百度" , "url":"www.baidu.com" }
]
}

web实例

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JSON-Web实例</title>
</head>
<body>
<h2>JavaScript 创建 JSON 对象</h2>
<p>
网站名称: <span id="jname"></span><br /> 
网站地址: <span id="jurl"></span><br /> 
网站标语: <span id="jslogan"></span><br /> 
</p>
<script>
var JSONObject= {
	"name":"Derwer",
	"url":"www.derwer.com", 
	"slogan":"理想 哲思 白日梦!"
};
document.getElementById("jname").innerHTML=JSONObject.name 
document.getElementById("jurl").innerHTML=JSONObject.url 
document.getElementById("jslogan").innerHTML=JSONObject.slogan 
</script>

</body>
</html>

JSON语法

JSON 语法是 JavaScript 语法的子集。

JSON 语法规则

JSON 语法是 JavaScript 对象表示法语法的子集。

  • 数据在名称/值对中
  • 数据由逗号分隔
  • 花括号保存对象
  • 方括号保存数组

JSON 名称/值对

JSON 数据的书写格式是:名称/值对。 名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值:

代码语言:javascript
复制
"UserId" : "Raphael"

这很容易理解,等价于这条 JavaScript 语句:

代码语言:javascript
复制
UserId = "Raphael"

JSON 值

JSON 值可以是:

  • 数字(整数或浮点数)
  • 字符串(在双引号中)
  • 逻辑值(true 或 false)
  • 数组(在方括号中)
  • 对象(在花括号中)
  • null

JSON 对象

JSON 对象在花括号中书写: 对象可以包含多个名称/值对:

代码语言:javascript
复制
{ "WebName":"Derwer" , "url":"www.derwer.com" }

这一点也容易理解,与这条 JavaScript 语句等价:

代码语言:javascript
复制
WebName = "Derwer"
url = "www.derwer.com"

JSON 数组

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

代码语言:javascript
复制
{
"sites": [
    { "name":"Derwer" , "url":"www.derwer.com" }, 
    { "name":"google" , "url":"www.google.com" }, 
    { "name":"百度" , "url":"www.baidu.com" }
]
}

上述例子中,对象 “sites” 是包含三个对象的数组。每个对象代表一条站点(信息)的记录。

JSON 使用 JavaScript 语法

因为 JSON 使用 JavaScript 语法,所以无需额外的软件就能处理 JavaScript 中的 JSON。 通过 JavaScript,您可以创建一个对象数组,并像这样进行赋值: 实例

代码语言:javascript
复制
var sites =  [
    { "name":"Derwer" , "url":"www.derwer.com" }, 
    { "name":"google" , "url":"www.google.com" }, 
    { "name":"百度" , "url":"www.baidu.com" }
];

可以像这样访问 JavaScript 对象数组中的第一项(索引从 0 开始):

代码语言:javascript
复制
sites[0].name;

返回的内容是:

代码语言:javascript
复制
Derwer

可以像这样修改数据: sites[0].name=”Derwer | 世界就在你眼前”;

JSON 文件

JSON 文件的文件类型是 “.json” JSON 文本的 MIME 类型是 “application/json”

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-11-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • JSON学习笔记
  • 什么是JSON
    • 优点:
      • 与 XML 相同之处
        • 与 XML 不同之处
          • 为什么使用 JSON?
          • JSON 实例
            • 简单实例
              • web实例
              • JSON语法
                • JSON 语法规则
                  • JSON 名称/值对
                    • JSON 值
                      • JSON 对象
                        • JSON 数组
                          • JSON 使用 JavaScript 语法
                          • JSON 文件
                          领券
                          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档