JSON

2018-01-08  本文已影响0人  梨啊梨

JSON不支持变量、函数和对象实例,他就是一种表示结构化数据的格式。

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

简单值

JSON表示数值       5      一个简单的数字5

JSON表示字符串   "Hello"      必须双引号,不可以单引号

布尔值和null也是有效的JSON形式,没有undefined

对象

不需要声明变量,对象的属性名必须加引号

数组

[25,“hi”,true]


解析与序列化

JSON对象

JSON对象有两个方法:stringify()parse()。他们分别用于将JavaScript对象序列化为JSON字符串和把JSON字符串解析为原生的JavaScript值。

默认情况下,JSON.stringify()输出的JSON字符串不包含任何空格或者缩进。

结果中最终都是值为有效的JSON数据类型的实例属性,值为undefined的任何属性直接跳过。

序列化JavaScript

如果传递给JSON.parse()的字符串不是有效的JSON,该方法抛出错误

序列化选项

JSON.stringify()还可以接受另外两个参数,第一个是过滤器,可以是数组或者函数,第二个参数是选项,表示是否在JSON中保留缩进。

1. 过滤结果

第二个参数是数组

第二个参数是函数

传入的函数接受两个参数,分别是键与键值

如果返回的是undfined则属性会被忽略

2. 字符串缩进

JSON.parse()方法的第三个参数表示,结果中的缩进与空白符。最大值为10,不可以超过10


JSON在线校验:JSONLint 网址

上一篇下一篇

猜你喜欢

热点阅读