https://www.snapchat.com/l/en...
假設這個網站好了
你右鍵>原始代碼,可以看到他很多 html, js等等都會進行壓縮
只是這個原理是什麼?
假設其中有東西需要修改刪除,這他們要怎麼還原?
我只是原本想要壓縮,但是突然想到萬一要還原修改呢?
修改完再繼續壓縮再上傳?是這個原理嗎?
https://www.snapchat.com/l/en...
假設這個網站好了
你右鍵>原始代碼,可以看到他很多 html, js等等都會進行壓縮
只是這個原理是什麼?
假設其中有東西需要修改刪除,這他們要怎麼還原?
我只是原本想要壓縮,但是突然想到萬一要還原修改呢?
修改完再繼續壓縮再上傳?是這個原理嗎?
主要功能有:
1. 压缩体积。比如改成短命名变量、去除空格等。
2. 代码优化。比如`undefined`改`void 0`,去除未使用的变量声明。
3. 混淆。
4. 其他。比如可能会合并小文件等等。
修改完再繼續壓縮再上傳?是這個原理嗎?
是这样的,修改不是问题,如果是调试的话需要Source Map
,不过一般都带。
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答5.2k 阅读✓ 已解决
5 回答2.1k 阅读
3 回答2.4k 阅读✓ 已解决
这种压缩是基于html是标签括起来就可以的,不需要分行,甚至所有内容可以写在一行中。
js代码也有
;
和{}
来定义代码块和主动分行(每个;
间是一行代码),此外再利用变量名替换等等就可以减少内容中无关的空格、换行等内容实现内容的压缩,甚至还可以利用文本压缩算法,在执行具体内容前进行一次解压动态加载(由浏览器加载代码时自动执行)。这样的技术可以满足建设网络流量,加快传输等等效果,在一定程度上还可以加密(比如加入混淆处理)。
这些代码的开发是一套体系,完成后会通过专门的工具自动进行压缩后部署。
可以参考https://blog.csdn.net/yanghaonan7758/article/details/71077411