博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JSON总结
阅读量:5749 次
发布时间:2019-06-18

本文共 887 字,大约阅读时间需要 2 分钟。

hot3.png

关于JSON,最重要的是要理解它是一种数据格式,不是一种编程语言。虽然,具有相同的语法形式,但JSON并不从属于JavaScript。而且,并不是只有JavaScript才使用JSON,毕竟JSON只是一种数据格式。很多编程语言都有针对JSON的解析器和序列化器。

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

  • 简单值:使用与JavaScript相同的语法,可以在JSON中表示字符串,数值,布尔值和NULL。但是JSON并不支持JavaScript中的特殊值undefined。

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

  • 数组:数组也是一种复杂数据类型,表示一组有序的值的列表,可以通过数组索引来访问其中的值。数组的值也可以是任意类型——简单值,对象或数组。

早期的JOSN解析器基本上就是使用JavaScript的eval()函数。在旧版本的浏览器中,使用eval()对JSON数据结构求值存在风险,因为可能会执行一些恶意代码。ECMAScript5对解析JSON的行为进行了规范,定义了全局的JSON。

JSON对象有两个方法:stringify()和parse()。在最简单的情况下,这两个方法分别用于把JavaScript对象序列化为JSON字符串和把JSON字符串解析为原生JavaScript值。

    如下面的例子:使用parse()把JSON字符串解析为原生JavaScript值,然后使用stringify()把javascript对象序列化为JSON字符串。

在使用JOSN.stringify()把一个JavaScript对象序列化为一个JSON字符串时,所有函数及原型成员都会被有意忽略,不体现在结构中。此外,值为undefined的任何属性也都会被跳过。

如需了解更多有关JSON知识请看《JavaScript 高级编程》第20章,其中有关于JSON字符串序列化的内容。

转载于:https://my.oschina.net/lvhuizhenblog/blog/313167

你可能感兴趣的文章
JS中比较数字大小
查看>>
POST中文转码问题
查看>>
springcloud 学习-eureka搭建-为eureka添加认证
查看>>
jQuery插件的开发
查看>>
基础,基础,还是基础之JAVA基础
查看>>
Nginx配置文件
查看>>
如何成为一个C++高级程序员
查看>>
iptables 生产环境配置
查看>>
ant android 打包签名和渠道
查看>>
Lua中的全局变量与环境
查看>>
linux命令学习(1)-awk
查看>>
ActionBar中SearchView创建的2种方式
查看>>
一个简单的接口,被调用并同步给出响应的方法
查看>>
rhel7.2使用lvm安装虚拟机
查看>>
公司网络很慢很卡的原因分析与处理
查看>>
Hadoop序列化与压缩
查看>>
由“男怕入错行”说开去
查看>>
php-fpm多实例运行
查看>>
MySQL数据库安装
查看>>
CGImageSource对图像数据读取任务的抽象
查看>>