如果html傳輸全部使用json, browser 將會快很多?
01-14
如果傳輸全部使用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啊?