您的位置:js12345金沙官网登入 > 网络编程 > 金沙澳门娱乐网址JSON开发笔记(一)—— JSON基

金沙澳门娱乐网址JSON开发笔记(一)—— JSON基

2019-10-09 04:18

3. JSON值的类型

JSON的数据都在key/value对中存储,其中,这个,可选类型如下:

  • 数字,例如:{ "number":12.34 }

  • 字符串,例如:{ "name":"qiumengchen" }

  • 逻辑值(true 或 false),例如:{ "isOpen":true }

  • 数组,例如:{ "array":[1.2 , "3" , true , [4,5] , {"test":"ok"} , null] }

  • 对象,例如:{ "person":{"name":"qiumengchen","isHandsome":true} }

  • null,例如:{ "blog":null }

总体来说,JSON的完整表现形式有两种:

  • JSON对象:以大括号({})为标志,对象可以包含多个key/value对,注意:对象中的每一项都必须是key/value对,不能是其他形式。但是,其中的key必须是字符串,其中的value可以是合法的JSON数据类型包括:数字、字符串、逻辑值、数组、对象、null等。例如:
{ "name":"qiumengchen" , "isHandsome":true , "blog":{"url":"qiumengchen.top","name":"myBlog"} }
  • JSON数组:以中括号([])为标志,数组可以包含多个value,value可以是合法的JSON数据类型包括:数字、字符串、逻辑值、数组、对象、null等。但是,一般来说,我们会保持数据中每个项的形式和意义的一致性,方便理解和运用。例如:
[ 99 , "qiumengchen" , true , [1,2,3] , {"name":"qiumengchen"} , null ]

 

Json 定义:

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

JSON 是存储和交换文本信息的语法。类似 XML。

JSON 比 XML 更小、更快,更易解析。

  • JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)
  • JSON 是轻量级的文本数据交换格式
  • JSON 独立于语言:JSON 使用 Javascript语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。 目前非常多的动态(PHP,JSP,.NET)编程语言都支持JSON。
    • JSON 文本格式在语法上与创建 JavaScript 对象的代码相同。
    • 由于这种相似性,无需解析器,JavaScript 程序能够使用内建的 eval() 函数,用 JSON 数据来生成原生的 JavaScript 对象。
  •  
  • JSON 具有自我描述性,更易理解

 

 

  • JSON 是纯文本
  • JSON 具有"自我描述性"(人类可读)
  • JSON 具有层级结构(值中存在值)
  • JSON 可通过 JavaScript 进行解析
  • JSON 数据可使用 AJAX 进行传输
  • 没有结束标签
  • 更短
  • 读写的速度更快
  • 能够使用内建的 JavaScript eval() 方法进行解析
  • 使用数组
  • 不使用保留字

 

1. 何为 JSON

JSON( JavaScript Object Notation ),即 JavaScript 对象表示法。JSON 主要用于存储和交换文本信息,类似于XML。但是和 XML 相比,JSON 是更加轻量级的文本数据交换格式,具有更小、更快、更易解析的特点。JSON 具有自我描述性,更易理解。虽然 JSON 使用 JavaScript 语法来描述数据对象,但是,JSON 是独立于语言和平台的。JSON 解析器和 JSON 库支持许多不同的编程语言。

 语法

JSON 数据的书写格式是:名称/值对。

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

JSON 数字可以是整型或者浮点型:

JSON 对象在大括号({})中书写:

对象可以包含多个名称/值对:

JSON 布尔值可以是 true 或者 false:

JSON 可以设置 null 值:

  • JSON 文件的文件类型是 ".json"
  • JSON 文本的 MIME 类型是 "application/json"

访问对象的值可以用 . (打点)、[ ]中括号。

for –in循环对象属性,可以使用中括号([ ])来访问属性的值

 

JSON 对象中可以包含另外一个 JSON 对象:可以使用点号(.)或者中括号([])来访问嵌套的 JSON 对象。

可以使用点号(.)来修改 JSON 对象的值:对象.内对象.值=” “

用中括号也可以。

用 delete 关键字来删除json对象 , 打点  和  中括号都可以

 

JSON 数组在中括号中书写。

JSON 中数组值必须是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)。

JavaScript 中,数组值可以是以上的 JSON 数据类型,也可以是 JavaScript 的表达式,包括函数,日期,及 undefined

对象属性的值可以是数组。

 

 

 

 

 

 

遍历json数组:

 

循环嵌套数组:

 

 

可以使用索引值来修改数组值

我们可以使用 delete 关键字来删除数组元素:

json数据格式:主要由对象 { } 和数组 [ ] 组成:

其中对象包括键值对(属性:属性值){key: value},value 可为 str,num,list,obj。取值使用 objcet.key

{key: value, key2:value2,} 键:值用冒号分开,对间用,连接

数组包含元素:num,str,list,objcet 都可以,利用索引访问 [index],用 . 连接各个值

 

4. 与XML比较

与XML相同之处

  • JSON 是纯文本
  • JSON 具有"自我描述性"
  • JSON 具有层级结构
  • JSON 可通过 JavaScript 进行解析
  • JSON 数据可使用 AJAX 进行传输

与XML不同之处

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

JSON.parse()

JSON 通常用于与服务端交换数据。

在接收服务器数据时一般是字符串。

我们可以使用 JSON.parse() 方法将数据转换为 JavaScript 对象。

 

 

 

 

使用 AJAX 从服务器请求 JSON 数据,并解析为 JavaScript 对象:

使用 XMLHttpRequest 来获取文件内容,文件内容是标准的

 JSON 格式,可以使用 JSON.parse 方法将其转换为 JavaScript 对象

JSON 不能存储 Date 对象。

如果你需要存储 Date 对象,需要将其转换为字符串。

之后再将字符串转换为 Date 对象。

 

将字符串转换为Date对象

 

字符串转换为函数

 

本文由js12345金沙官网登入发布于网络编程,转载请注明出处:金沙澳门娱乐网址JSON开发笔记(一)—— JSON基

关键词: