JSON 的简介与使用

一、什么是JSON?

JSON(javascript object notation)全称是 javascript 对象表示法,是一种数据交换的文本格式,用于读取结构化数据,提出目的是取代繁琐笨重的 XML 格式。

 

二、JSON的语法规则

JSON的语法可以表示以下三种类型的值:

1、简单值

简单值使用与 JavaScript 相同的语法,可以在JSON中表示字符串、数值、布尔值和null。

字符串必须使用双引号表示,不能使用单引号,数值必须以十进制表示,且不能使用 NaN 和 Infinity。

(说明:JSON 不支持 JavaScript 中的特殊值 undefined )

 

2、对象

对象作为一种复杂数据类型,表示的是一组有序的键值对,而每个键值对中的值可以是简单值,也可以是复杂数据类型的值。

JSON 中对象的键名必须放在双引号里面,因为 JSON 不是 javascript 语句, 所以没有末尾的分号。

(说明:同一个对象中不应该出现两个同名属性)

 

3、数组

数组也是一种复杂数据类型,表示一组有序的值的列表,可以通过数值索引来访问其中的值

(说明:数组或对象最后一个成员的后面,不能加逗号)

 

三、关于 JSON 对象

JSON 对象的两个方法:

1、stringify()

  • 语法:JSON.stringify()
  • 功能:用于将一个值转为字符串,该字符串应该符合 JSON 格式,并且可以被 JSON.parse() 方法还原

 

2、parse()

  • 语法:JSON.parse()
  • 功能:用于将JSON字符串转化成对象

 

3、总结:

  • JSON 之所以流行,是因为可以把 JSON 数据结构解析为有用的 javascript 对象

  • JSON 对象的 stringify() 和 parse() 这两个方法可以分别用于把 JavaScript 对象序列化为 JSON 字符串和把 JSON 字符串解析为原生 JavaScript 值

  • JavaScript 的 eval() 类似于 JSON.parse() 方法,可以将 json 字符串转换为 json 对象,但是 eval() 可以执行不符合 JSON 格式的代码,有可能会包含恶意代码,所以尽量少用

 

posted @ 2019-07-18 21:49  Leophen  阅读(...)  评论(...编辑  收藏