XML 和 Json的区别对比

JSON已成web数据传输的首要选择,今天就来谈谈XML与JSON,包括两者的相同点与共同点,以及优缺点。


JSON:

        javascript对象标记方法,一种轻量级的数据交换格式,是JavaScript的子集,由于是一种语言层面的规范,因此得以更好地在客户端解析使用。
       数据格式:数字、布尔、字符串(双引号)、对象、数组、null,没有undefined。
       良好的API支持(JSON.stringify,JSON.parse),可以在客户端实现javascript对象 与 JSON字符串之间的相互转化
       stringify(jsonObj,function(){ //对序列化做过滤限制 },space);space用于对序列号结果做缩进结构化,增强易读性。
       parse(jsonString,function(){ //对解析做过滤限制 })
       JSON的序列化和解析目标如果是对象或数组,需要注意的是会首先解析这个主题(key值为""),每遇到一个对象成员,都会递归式地进行序列化或解析,首先处理好对象本身,才能过滤对象成员。因此,要做限制的时候需要注意。

//错误写法
var jsonObj = { name:"hezebing",sex:"male" }
JSON.stringify(jsonObj,function(key,value){
    if( key === "name" ){
        return value
    }
})
//返回 : undefined
 
//正确写法
var jsonObj = { name:"hezebing",sex:"male" }
JSON.stringify(jsonObj,function(key,value){
    if(key === ""){
        //对象本身
        return value
    }else if( key === "name" ){
        return value
    }
})
//返回 : "{"name":"hezebing"}"

XML

       可扩展标记语言.优点在于描述数据凸显其结构性,亦即其UI性,在良好的UI层面增加新元素非常简单而清晰。
       描述一个实体(person),没有限定属性或者子元素来定义实体的属性(身高,年龄,性别等等),带来了很多的灵活性,也造成了不同程序之间的差异习惯,可扩展意味着"多形态",某种层面的不统一。
       当服务端发送XML文档至客户端后,需要客户端做解析为DOM树再做节点遍历来获取数据。

<school name="北大">
    <colleages>
        <!-- 经济学院 --> 
        <economy></economy>
        <!-- 新增 达摩学院 --> 
        <damo></damo>
    </colleages>
</school>

总结
       json轻便、解析简单,对客户端更加友好。
       XML更加笨重,解析为DOM树并遍历节点来取数据,优点是结构清晰,扩展性好。
————————————————
原文链接:https://blog.csdn.net/qq_40882724/article/details/82421558

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值