JSON

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 网址

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容