鍍金池/ 問答/HTML/ 原始碼壓縮原理?

原始碼壓縮原理?

https://www.snapchat.com/l/en...

假設(shè)這個網(wǎng)站好了
你右鍵>原始代碼,可以看到他很多 html, js等等都會進(jìn)行壓縮
只是這個原理是什麼?
假設(shè)其中有東西需要修改刪除,這他們要怎麼還原?
我只是原本想要壓縮,但是突然想到萬一要還原修改呢?
修改完再繼續(xù)壓縮再上傳?是這個原理嗎?

回答
編輯回答
互擼娃

主要功能有:

1. 壓縮體積。比如改成短命名變量、去除空格等。
2. 代碼優(yōu)化。比如`undefined`改`void 0`,去除未使用的變量聲明。
3. 混淆。
4. 其他。比如可能會合并小文件等等。
 
修改完再繼續(xù)壓縮再上傳?是這個原理嗎?

是這樣的,修改不是問題,如果是調(diào)試的話需要Source Map,不過一般都帶。

2018年8月4日 08:42
編輯回答
心上人

多份代碼,開發(fā)環(huán)境與生產(chǎn)環(huán)境使用不同的代碼,
修改是修改原始代碼 -> 打包、壓縮 ->上生產(chǎn)
有東西需要修改、刪除,變更的是原始代碼 -> 打包、壓縮 這是兩份 互不影響

2017年3月9日 12:10
編輯回答
晚風(fēng)眠

這種壓縮是基于html是標(biāo)簽括起來就可以的,不需要分行,甚至所有內(nèi)容可以寫在一行中。
js代碼也有;{}來定義代碼塊和主動分行(每個;間是一行代碼),此外再利用變量名替換等等就可以減少內(nèi)容中無關(guān)的空格、換行等內(nèi)容實(shí)現(xiàn)內(nèi)容的壓縮,甚至還可以利用文本壓縮算法,在執(zhí)行具體內(nèi)容前進(jìn)行一次解壓動態(tài)加載(由瀏覽器加載代碼時自動執(zhí)行)。
這樣的技術(shù)可以滿足建設(shè)網(wǎng)絡(luò)流量,加快傳輸?shù)鹊刃Ч?,在一定程度上還可以加密(比如加入混淆處理)。
這些代碼的開發(fā)是一套體系,完成后會通過專門的工具自動進(jìn)行壓縮后部署。
可以參考https://blog.csdn.net/yanghaonan7758/article/details/71077411

2018年1月2日 13:02