json可以代替xml,为什么网页不用json格式来写呢?
感谢邀约,首先要搞明白 Json 和 XML 的区别和应用场景,存在即合理,就好比有这么多开发语言 ,各种有种的好,但是想去替换是不太可能的,以下是我针对这个问题的看法,欢迎大家一起来探讨:
Json 是一种轻量级的 数据交换格式 ,Douglas Crockford(Web开发领域最知名的技术权威之一,他是JSON、JSLint、JSMin和ADSafe的创造者)在2001年开始推广Json,直到2005年~2006年,雅虎和谷歌就开始广泛的进行使用此格式,因此很快正式成为了主流的数据格式。
XML是一种用于标记电子文件使用其具有结构性的标记语言。那么什么是标记语言,是一种将文本及文本相关的其他信息结合起来,展现文档结构和数据处理细节的电脑文字编码。制作网页我们用html进行布局,HTML就是网页标记语言,属于XML,是其在网页领域的应用。
从概念上来讲,JSON 是一种 数据交换形式,XML 是一种 标记语言,用来展现文本信息结构。从中可以看出前者强调的是数据,后者强调的是标记与展现。
如果网页用JSON来写,真的会看不懂。
JSON用来传递数据还好。
xml虽说在表达数据方面不如JSON,但用来开发还是可以的。有层次性,也符合网页结构。
可以说xml和网页开发非常契合。
——————
之前的程序之间的通讯的数据载体是xml。后来在很多地方json替代了xml。主要有:
1.json格式简单,轻量,不需要前后的标签,减少数据传输的宽带。
2.js天然支持解析json,xml前后端都需要额外的解析一次。
3.json传输支持更多的类型,比如:字符串,数组,布尔值。而xml解析出来都是字符串。
而网页不用json来写,因为html是xml一个变式,html和css,js技术已非常成熟,各大浏览器都支持。不太可能让合浏览器厂商在改变规则,开发对json的支持。
这是两套单独的技术体系,不可相提并论、混为一谈!
XML(可扩展标记语言):标记就是类似于HTML标签的编写方式,可扩展是完全自定义化,不需要官方提供任何固有的标签结构,其作用为描述、传输和存储数据。
Json(JavaScript Object Notation, JS 对象简谱):是一种轻量级的数据交换格式。它是ECMAScript规范的一个子集,***用完全独立于编程语言的文本格式来存储和表示数据。
实际上XML与Json有着几乎相同的使命就是解决数据交换与传输问题,由于项目异构的存在,彼此之间进行数据的传输是一件比较麻烦的事情。
犹如是一道道鸿沟,导致了信息孤岛的产生!例如:有一个公司开发了天气预报的项目,每天可以记录与预报天气的情况信息,对于旅游网站来说不仅仅要在网站上展示自己的产品,同时在下订单的时候对天气的情况也要进行了解,这样才能保证旅游的过程是顺利的!
那么旅游公司的项目就需要读取天气预报公司的数据,而天气预报的公司不可能开放自己的数据库权限给他人使用,无论是安全性、性能上都是不可接受的!
所以需要一种中间语言的存在,这种语言大家都可以识别与操作,类似于人类生活的翻译,这样就很好的解决了上述的信息孤岛问题,将项目之间很好的链接起来就形成了云!
网页当然可以用JSON格式来写啊!
但是,标准已经存在了。HTML的出现远在JSON之前,JSON可以说是HTML的孙辈了。
这就是所谓的“先发优势”。既然HTML已经能很好的完成工作了,为什么要改成JSON呢?对于网页本身,改用JSON能不能带来好处且不说,即使能带来好处,也是微乎其微的。
我们能看出,最新的浏览器仍然能渲染古老的HTML3.2,甚至更早期的网页;新式纯HTML网页,也能在古老的浏览器中展示出大概内容。那么,大幅度改变这一标准,造成两种标准不兼容,或者推动一套不兼容的平行标准,必然需要付出巨大的代价。从浏览器渲染引擎开始,到开发工具、[_a***_]等等,工作量巨大,远不止苹果当年弄出一个Webkit那么简单。那么,由谁来推动,由谁来承担改变这一标准所付出的代价呢,或者说,谁来完成这个++++版的Webkit并推广它呢?
不仅是网页,就连Office的XML文档格式都很难改变。Office以及仿Office的ODT文档都是XML格式,又有谁用JSON来记录文档呢?
有, 叫portabletext。可以试试,看看JSON格式的好处和坏处在哪里。
小结一下:效果差别不大的情况下,标准的力量是强大的。涉及的人越多,标准的力量越大。