DWZ框架-Javascript混淆和压缩

2018-11-17 15:38 更新

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

DWZ混淆和压缩方法:

1)    打开bin/gzjs.bat修改第一行路径为本地文件系统绝对路径

2)    执行批处理文件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命令行下执行

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压缩

动态的压缩会导致服务器CPU占用率过高,现在我想到的解决辨法是通过提供静态压缩(就是将js预先通过gzip.exe压缩好)

传统的JS压缩(删除注释,删除多余空格等)提供的压缩率有时还是不尽不意,幸亏现在的浏览器都支持压缩传输(通过设置http header的Content-Encoding=gzip), 可以通过服务器的配置(如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 修改第一行路径为本地文件系统绝对路径

2)    执行批处理文件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【可选】 用于国际化

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号