JavaScript JSON 学习笔记

转载 2016年05月30日 20:48:37

JSON 是用于存储和传输数据的格式。

JSON 通常用于服务端向网页传递数据 。


什么是 JSON?

  • JSON 英文全称 JavaScript Object Notation
  • JSON 是一种轻量级的数据交换格式。
  • JSON是独立的语言 *
  • JSON 易于理解。

Note * JSON 使用 JavaScript 语法,但是 JSON 格式仅仅是一个文本。
文本可以被任何编程语言读取及作为数据格式传递。

JSON 实例

以下 JSON 语法定义了 employees 对象: 3 条员工记录(对象)的数组:

JSON Example

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

JSON 语法规则

  • 数据为 键/值 对。
  • 数据由逗号分隔。
  • 大括号保存对象
  • 方括号保存数组

JSON 数据 - 一个名称对应一个值

JSON 数据格式为 键/值 对,就像 JavaScript 对象属性。

键/值对包括字段名称(在双引号中),后面一个冒号,然后是值:

"firstName":"John"


JSON 对象

JSON 对象保存在大括号内。

就像在 JavaScript 中, 对象可以保存多个 键/值 对:

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


JSON 数组

JSON 数组保存在中括号内。

就像在 JavaScript 中, 数组可以包含对象:

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

在以上实例中,对象 "employees" 是一个数组。包含了三个对象。

每个为个对象为员工的记录(姓和名)。


JSON 字符串转换为 JavaScript 对象

通常我们从服务器中读取 JSON 数据,并在网页中显示数据。

简单起见,我们网页中直接设置 JSON 字符串 (你还可以阅读我们的 JSON 教程):

首先,创建 JavaScript 字符串,字符串为 JSON 格式的数据:

var text = '{ "employees" : [' +
'{ "firstName":"John" , "lastName":"Doe" },' +
'{ "firstName":"Anna" , "lastName":"Smith" },' +
'{ "firstName":"Peter" , "lastName":"Jones" } ]}';

然后,使用 JavaScript 内置函数 JSON.parse() 将字符串转换为 JavaScript 对象:

var obj = JSON.parse(text);

最后,在你的页面中使用新的 JavaScript 对象:

实例

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
obj.employees[1].firstName + " " + obj.employees[1].lastName;
</script>

尝试一下 »

相关函数

函数 描述
JSON.parse() 用于将一个 JSON 字符串转换为 JavaScript 对象。
JSON.stringify() 用于将 JavaScript 值转换为 JSON 字符串。

与 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 文件的文件类型是 ".json"
  • JSON 文本的 MIME 类型是 "application/json"




javascript基础学习笔记

编者寄言:  本文主要为编者读书笔记,在文章里面很多话是掺杂了编者自己的见解,如果有哪里出现错误或者用词不严谨,请友善留言,编者会及时去更改。 本文很多地方只是简单说了一下应该注意的地方,具体代码部分...
  • u012967849
  • u012967849
  • 2016年07月20日 14:08
  • 1905

javascript学习笔记

第一章 一、JavaScript概述 JavaScript是基于对象和事件驱动的脚本语言,主要应用在客户端。 特点: 1.交互性(它可以做的就是信息的动态交互) 2.安全性(它不允许直接访问本地硬盘...
  • zhoulenihao
  • zhoulenihao
  • 2013年09月04日 23:04
  • 3977

JavaScript学习笔记

JavaScript学习笔记1.六种数据类型 原始类型: number string boolean null ...
  • wuya814070935
  • wuya814070935
  • 2015年08月31日 10:34
  • 911

JSON学习笔记整理一

JSON学习笔记整理一JSON定义 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。 JSON语法 JSON 语法是 JavaScr...
  • a786132874
  • a786132874
  • 2016年01月12日 23:32
  • 812

js学习笔记(比较全)

什么是JavaScript? 1. JavaScript 是一种客户端脚本语言(脚本语言是一种轻量级的编程语言)。 2. JavaScript 通常被直接嵌入 HTML 页面。 3....
  • jiangzhongwei_
  • jiangzhongwei_
  • 2016年07月22日 20:12
  • 552

JavaScript学习笔记

JavaScript 是 Web 的编程语言。 输出文本 document.write(Date()); 改变HTML元素 我的第一个 Web 页面 我的第一个段落。 document.g...
  • linxinfa
  • linxinfa
  • 2016年06月29日 21:04
  • 300

《JavaScript语言精粹》读书笔记

一本好书,结合《JavaScript高级教程》将会组成JavaScript基础搭档。 两相结合的看了两本书,觉得应该学习精粹中的代码书写方式,有规则,而且尽量采用精华自己。毕竟,成就一门语言的,是它...
  • u011507024
  • u011507024
  • 2016年01月18日 23:51
  • 221

《Javascript权威指南》学习笔记之十六:BOM之源---BOM基本应用

、浏览历史管理 1、history对象的方法和属性 History 对象包含用户(在浏览器窗口中)访问过的 URL,是 window 对...
  • u011043843
  • u011043843
  • 2014年06月11日 13:06
  • 1266

Json学习一(基础概念知识学习)

1.Json简介 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它使得人们很容易的进行阅读和编写。同时也方便了机器进行解析和生成。它是基于 J...
  • cuiyaoqiang
  • cuiyaoqiang
  • 2016年03月31日 11:00
  • 2059

《javascript设计模式与开发实践》阅读笔记(三)

this,call和apply2.1 thisthis指针的用法,相信在很多场合都看到过,这里也总结了几点: 作为对象的方法调用 作为普通函数调用 构造器调用 Function.prototype.c...
  • sinat_25127047
  • sinat_25127047
  • 2016年11月03日 11:41
  • 396
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JavaScript JSON 学习笔记
举报原因:
原因补充:

(最多只允许输入30个字)