关于JSON

前言——关于JSON

JSON(JavaScript Object Notation)是一种由道格拉斯·克罗克福特构想和设计、轻量级的数据交换语言,该语言以易于让人阅读的文字为基础,用来传输由属性值或者序列性的值组成的数据对象。尽管JSON是Javascript的一个子集,但JSON是独立于语言的文本格式,并且采用了类似于C语言家族的一些习惯。
JSON 数据格式与语言无关,脱胎于 JavaScript,但目前很多编程语言都支持 JSON 格式数据的生成和解析。JSON 的官方 MIME 类型是 application/json,文件扩展名是 .json。


比如下面一段代码就是简单的JSON代码:

var test{
    "firstName":"John",
    "lastName":"Smith",
    "sex":"male",
    "age":25,
    "address":{
        "streetAddress":"21 2nd Street",
        "city":"New York",
        "state":"NY",
        "postalCode":"10021"
    },
    "phoneNumber":[
        {
            "type":"home",
            "number":"212 555-1234"
        },
        {
            "type":"fax",
            "number":"646 555-4567"
        }
    ]
}

在前端页面中,可以这样引用设置值:

比如test.firstname来获取John的值。

当然还有一个叫做xml的也可以达到如上效果,那么这两个的区别是什么呢?

XML和JSON的区别

通常情况下,当需要获取数据的时候,到底是通过什么进行传输呢?当然肯定不能是一段普通的文本,因为接收方并不知道这段文字的作用。因此,在网络上进行传输的一般都是经过格式化处理的数据,这种数据有一定的结构规格和语义。这样接收方就能够在收到信息之后按照一定的解析规则从数据中解析出想要的数据。例如上面,可以通过这样的解析得到name属性的值。

XML的优点:
1、通用的数据格式;
2、不必把数据强加到已定义好的格式中,而是要为数据自定义合适的标记;
3、利用DOM可以完全掌控文档。
XML的缺点:
1、如果文档来自于服务器,就必须得保证文档含有正确的首部信息。若文档类型不正确,那么responseXML的值将是空的;
2、当浏览器接收到长的XML文件后,DOM解析可能会很复杂。

JSON的语法,是非常明显的键值对(key-value),key不允许重复,且需以双引号包括,键值对中允许嵌套,值可以为字符(使用双引号或者单引号包括)、数值、布尔型(true\false)、数组([1,2,3,5])或者null。同级元素间以“,”隔开,花括号包含的的内容被称为对象,键值对中值也允许为对象。

对比XML,JSON的主要优势在于它的体积较小,在网络传输的过程中可以更省流量。缺点在于,语义性较差,看起来不如XML美观。

总结

XML相对于JSON而言是一种重量型的数据交换格式;而JSON是一种轻量型的数据交换格式,两个各有优缺点,孰轻孰重还要看具体的应用环境。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值