json可以代替xml,为啥网页不用json格式来写呢?

DearJackal


HTML是表示页面结构,而json是数据结构,json对页面结构没法表示,也没法结合css


非IT专业的编程栈


json可以代替xml部分功能,但并不能完全替代。能替代的功能是数据描述,不能替代的是结构描述。关于这一点,我详细说明一下。

首先请了解一下前端开发或叫网页开发的内容,包括四部分:

1、结构,即Html,或xml

2、样式,即Css

3、形为,Javascript

4、数据,xml或json

结构、样式、形为、数据的概念,大约在2003左右吧(具时间不记得了,反正十几年前),ECMA就已经提出了。ECMA全称是中文名称为欧洲计算机制造商协会,主要是提供一些计算机规范。不过当时的浏览器还是IE的天下,微软牛逼丫根儿不听他们的。

之后十几年不断发展、完善过程,形成比较成熟的开发思路。

一、先说结构与样式。

即,采用html描述网页结构,样式由css处理,之前Html还有一些属性例如width,height,等,后来都被弃用,采用css的width或height来设置宽度。这就是结构与样式的分离。由于Html是基于xml为基础的,网页也可以用xml描述结构,例如你自定义一个节点叫weishakeji,css照顾可以给它赋样式,完全和html一样。

二、再说结构与形为。

用Html或xml描述的网页元素,它如何响应鼠标事件或用户操作呢?这是由Javascript来控制的,虽然我们也可以在Html元素中直接写Js,例如

但这样混在一起不好阅读代码,一般会分离到单独的js文件中。

三、再说结构与数据。

用Html或xml描述网页结构,然后显示具体的内容时,这些内容可以用XML存放,也可 以用Json存放。如果用xml存放,是可以直接用于网页显示的,前面说了,xml直接用于网页结构描述,css渲染效果。但是它既表示结构,又表示数据,不方便。当然也可以用XSL语言解析xml数据显示到html中,XSL 指扩展样式表语言(EXtensible Stylesheet Language)。但是XSL解析效率比较低,语法不友好,难以阅读,最终没有流行起来。不过很多浏览器都支持,想用也可以。

四、Json与xml

Json是一个单纯的数据源,它不能描述网页结构,这是它不能用来做网页的重要原因,如果真的用它描述网页,并不方便,反而会变得繁杂。例如:

内容

如果用Json呢,如果描述上述节点的属性和内容?还是用Html描述更方便。

Json作为数据源,它的执行效率更高,但它必须依赖于Javascript,因为它本身就是一个Javascript对象,它不是独立的,它是js!

-----

所以,正常的开发思路是,Html描述网页结构,CSS渲染页面效果,Javascript提供交互形为,并读取和解析Json数据,显示到Html所描述的某个节点上。

每个都有自己的特点和专长,可以混用,但不可替代。


学习考试系统


json为什么火,没搞懂,说可读性,可理解性,约束性,似乎xml更上乘;说到网络传输节省带宽又有扩展性,似乎tlv结构更加节省,还支持原生二进制。思来想去,只可能是被web前端带火的,js脚本语言天生就不是操作二进制的,前后端取个平衡,得,json火了。


玉樹清風


json就一个简单的键值对信息,连做配置文件资格都不够,还取代xml?楼主新手一枚,要学习的还很多。


风yuanwen


我们公司前端自己写的框架,页面就是用json做的。json上配置指定函数名,然后用angular在js里写逻辑。json页面可以根据数据库生成,要配什么查询条件的话在json里配置。我也是第一次见这种一脸懵逼


吴雨吴球




不知道取什么名呀2018


先问是不是,再说为什么。谁说json能替代xml了。xml的深入应用复杂多了,强标准比json也严谨可靠的多。json只在小型应用上占了先机而已。真正xml的实力甩json十几条街


SuperTeh


json肯定是可以替代HTML的,但是,你得先让w3c推动一下,让合浏览器引擎大佬做json解析和渲染器!


tracky2002


json和XML是返回值,HTML是前端样式,功能都不一样。


Jimmy塔塔


1.json是作为序列化传输对象使用,较弱,不适合做描述性强的事,适合传输数据交换

2.xml是一种表述性语言,结构性强,适合描述事实,不适合传输交换

3.有html的时候没json呢


分享到:


相關文章: