如果html傳輸全部使用json, browser 將會快很多?

如果傳輸全部使用json, browser 將會快很多, 因為沒有closing tag (xml or html), 大家怎麼看這個問題?


瀏覽器會快很多?快在哪個步驟呢?是傳輸快還是解析快?

如果是說傳輸快,從信息的冗餘來講,closing tag 確實有那麼一點浪費空間,換成json或者別的什麼格式確實有道理。

但我們可以壓縮http body,gzip壓一壓就能把這個語法overhead控制得很好。所以就算你換掉HTML,在傳輸層面也快不了太多。

另外HTML相對於json有一個優勢就是容錯率高,丟掉一兩個tag影響不大。但如果用json,少掉一個雙引號很有可能整個response都得扔掉了。HTML 在可讀性方面也比json強很多。

你看,就單單為了影響並不大的closing tag而把HTML換成json,換來的僅僅是微乎其微的傳輸效率提升,撿了芝麻丟了西瓜。


@魯小夫 回答已經很好。速度以外的問題,題主也可參考 為什麼 Web 前端開發不拋棄 HTML 和 CSS,用純 JavaScript 開發? - 前端開發


真的想要傳輸效率就不要基於字元串,HTML和JSON都是基於字元串的。


直接傳輸壓縮後的二進位流才是最快的……


你用app不就好了, 界面都不用下, 傳輸基本都是json


有個說法,編程語言是面向人類的


json的格式不適合大量字元串的人工編輯和機器解析.


直接連圖片、樣式表、字體和HTML一起打個包再壓一壓最快喵……


答案是幾乎沒有差別,用json的話在性能低的設備上可能會更慢一點。

itunes PC 版本中的動態內容就是用二進位xml傳輸的,你有感覺快嗎?

為什麼沒差呢?因為 close tag 是給開發者看的,實際傳輸中,專業一點的web伺服器都是對頁面 gzip 壓縮的。

要快的話,應該想辦法減少HTTP請求,所以 SPDY協議就是從這個思路出發設計的。


其他答案說的很好了,題主不能忽略的問題還包括失去了直接使用html文本,以及開發模型複雜的弊端。這些是在公司做事不能忽略的重要問題。


試試使用angularjs開發一下就知道了,只要載入一個超大的首頁,其他的全部json傳輸


推薦閱讀:

HTML5定稿意味著什麼,原生應用生態系統要被顛覆嗎?
相比px而言,在響應式web設計中,em有何優勢?
求科普,請問HTML5究竟是什麼?
前端里移動端到底比 PC 端多哪些知識,為什麼面試時好多公司都問 H5 水平如何?該從哪裡入手學習?
為什麼HTML5的核心功能好多最新IE都不支持,還有那麼多人推崇HTML5啊?

TAG:HTML | 伺服器 | HTML5 | XML | JSON |