DWZ框架-Javascript混淆和壓縮

2018-11-17 15:38 更新

Javascript混淆并用gzip壓縮后,可以把300K的js壓縮到40K左右.

DWZ混淆和壓縮方法:

1)    打開bin/gzjs.bat修改第一行路徑為本地文件系統(tǒng)絕對路徑

2)    執(zhí)行批處理文件bin/gzjs.bat

Javascript混淆

DWZ混淆工具 bin/ESC.wsf

壓縮級別分為5種,從0到4

Level 0 :: No compression

Level 1 :: Comment removal

Level 2 :: Whitespace removal

Level 3 :: Newline removal

Level 4 :: Variable substitution

在WINDOWS命令行下執(zhí)行

cscript ESC.wsf -ow menu2.jsmenu.js將會把menu.js按照js壓縮級別2來壓縮(默認js壓縮級別為2)為menu2.js

cscript ESC.wsf -l 3 -owmenu3.js menu.js將會把menu.js按照js壓縮級別3來壓縮為menu3.js

需要注意的是,js壓縮級別4會把變量名修改,如果你的js中用到了全局變量或者類的話,就不能使用該壓縮級別了,否則其它使用你的js的文件可能會無法正常運行。

Javascript 用gzip壓縮

動態(tài)的壓縮會導(dǎo)致服務(wù)器CPU占用率過高,現(xiàn)在我想到的解決辨法是通過提供靜態(tài)壓縮(就是將js預(yù)先通過gzip.exe壓縮好)

傳統(tǒng)的JS壓縮(刪除注釋,刪除多余空格等)提供的壓縮率有時還是不盡不意,幸虧現(xiàn)在的瀏覽器都支持壓縮傳輸(通過設(shè)置http header的Content-Encoding=gzip), 可以通過服務(wù)器的配置(如apache)為你的js提供壓縮傳輸 .

Apache配制

在httpd.conf中加入配制,這樣瀏覽器可以自動解壓縮.gzjs

LoadModule mime_modulemodules/mod_mime.so

AddEncoding x-gzip .gzjs  .gzcss

DWZ如何中使用打包的js

在index.html中移除全部dwz.*.js,引入下面2個js庫

<script src="bin/dwz.min.js"type="text/javascript"></script>
<script src="javascripts/dwz.regional.zh.js" type="text/javascript"></script>

dwz.*.js打包到dwz.min.js步驟:

1)    打開bin/gzjs.bat 修改第一行路徑為本地文件系統(tǒng)絕對路徑

2)    執(zhí)行批處理文件bin/gzjs.bat

 

使用時引入以下js:

javascripts/speedup.js         【可選】js加速

javascripts/jquery-1.4.4.js    【必須】jQuery庫

javascripts/jquery.cookie.js   【可選】js操作cookie, 目前用于記住用戶選擇的theme風格

javascripts/jquery.validate.js 【必須】表單驗證

javascripts/jquery.bgiframe.js 【可選】用于IE6彈出層不能蓋住select問題

xheditor/xheditor-zh-cn.min.js 【可選】xheditor在線編輯器

uploadify/scripts/swfobject.js 【可選】用于文件批量上傳

uploadify/scripts/jquery.uploadify.v2.1.0.js  【可選】用于文件批量上傳

 bin/dwz.min.js 【必須】 DWZ框架js壓縮包

javascripts/dwz.regional.zh.js【可選】 用于國際化

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號