JavaScript 代码压缩工具小结


Posted in Javascript onFebruary 27, 2012

UglifyJS

UglifyJS是构建于nodeJS服务器端之上的一个代码压缩工具,目前jQuery使用它来压缩,压缩效果比较好。

GitHub主页:http://github.com/mishoo/UglifyJS/

在线使用:http://marijnhaverbeke.nl/uglifyjs

使用方法:

  1. 从http://nodejs.org下载nodejs,用到的是node.exe
  2. 再从UglifyJS的GitHub主页下载它的最新版本
  3. 复制node.exe到UglifyJS的bin目录
  4. 修改bin\uglifyjs,把require("uglify-js")改成require("../uglify-js"),假如提示找不到uglify-js的话
  5. 运行node uglifyjs ?o fancyValidate.min.js fancyValidate.js

注意要先指定-o参数,且-o参数后面紧跟的是压缩后的文件名,最后才是源文件。

如果嫌下载麻烦的话,直接使用它的在线版本。

Microsoft Ajax Minifier
Microsoft Ajax Minifier是微软出品的代码压缩工具,支持JavaScript和css代码压缩。

官方主页:http://ajaxmin.codeplex.com/

下载并安装,使用方法也很简单:ajaxmin fancyValidate.js ?o fancyValidate.min.js

更多的参数使用方法请看官方的说明文档:http://ajaxmin.codeplex.com/wikipage?title=Command-Line%20Switches

Google Closure Compiler

谷歌出品的代码压缩工具,需要JRE(从http://www.java.com/zh_CN/download/下载)的支持

官方主页:http://code.google.com/p/closure-compiler/

先安装好JRE,简单使用:java -jar compiler.jar --js hello.js --js_output_file hello-compiled.js

更多的参数说明请看相关的文档:https://developers.google.com/closure/compiler/docs/overview

YUI Compressor

Yahoo!UI团队出品的代码压缩工具,支持JavaScript和css代码压缩,同样也需要JRE支持。

官方主页:http://developer.yahoo.com/yui/compressor/

GitHub主页:https://github.com/yui/yuicompressor

从http://yuilibrary.com/download/yuicompressor/下载它,简单使用:java -jar yuicompressor-2.4.7.jar myfile.js -o myfile-min.js

更多参数的说明请看官方主页或https://github.com/yui/yuicompressor/blob/master/doc/README

Packer

著名的js大牛Dean Edwards写的压缩工具,压缩比率也比较高。

官方主页:http://dean.edwards.name/packer/

时间比较久远,但依然好用,也提供了不少参数设置。

JSMIN

与Packer差不多时代,仅对注释、空白等进行压缩。

官方主页:http://www.crockford.com/javascript/jsmin

提供了一个DOS命令行版本:http://www.crockford.com/javascript/jsmin.zip

简单使用:jsmin <fancyValidate.js> fancyValidate.min.js

结尾

就简单介绍到这里,另外在进行压缩之前最好能够使用JSLint(http://www.jslint.com/)检查代码,否则很可能导致压缩失败。

作者:?逶

Javascript 相关文章推荐
IE6下focus与blur错乱的解决方案
Jul 31 Javascript
jQuery1.6 使用方法一
Nov 23 Javascript
javascript显示用户停留时间的简单实例
Aug 05 Javascript
jQuery实现限制文本框的输入长度
Jan 11 Javascript
关于vue.extend和vue.component的区别浅析
Aug 16 Javascript
AngularJS select设置默认值的实现方法
Aug 25 Javascript
Vue 换肤的示例实践
Jan 23 Javascript
解决vue中使用Axios调用接口时出现的ie数据处理问题
Aug 13 Javascript
vue项目中引入vue-datepicker插件的详解
May 14 Javascript
javascript实现弹出层效果
Dec 10 Javascript
vant自定义二级菜单操作
Nov 02 Javascript
vue 把二维或多维数组转一维数组
Apr 24 Vue.js
根据邮箱的域名跳转到相应的登录页面的代码
Feb 27 #Javascript
设置iframe的document.designMode后仅Firefox中其body.innerHTML为br
Feb 27 #Javascript
jQuery学习笔记之控制页面实现代码
Feb 27 #Javascript
JQuery获取浏览器窗口内容部分高度的代码
Feb 24 #Javascript
JQuery操作表格(隔行着色,高亮显示,筛选数据)
Feb 23 #Javascript
基于JQuery实现鼠标点击文本框显示隐藏提示文本
Feb 23 #Javascript
js前台判断开始时间是否小于结束时间
Feb 23 #Javascript
You might like
学习php设计模式 php实现备忘录模式(Memento)
2015/12/09 PHP
thinkPHP使用post方式查询时分页失效的解决方法
2015/12/09 PHP
详解PHP的Yii框架中自带的前端资源包的使用
2016/03/31 PHP
php libevent 功能与使用方法详解
2020/03/04 PHP
一个刚完成的layout(拖动流畅,不受iframe影响)
2007/08/17 Javascript
Javascript客户端将指定区域导出到Word、Excel的代码
2008/10/22 Javascript
Jquery上传插件 uploadify v3.1使用说明
2012/06/18 Javascript
js调用AJAX时Get和post的乱码解决方法
2013/06/04 Javascript
JS实现自动切换文字的导航效果代码
2015/08/27 Javascript
Labelauty?jQuery单选框/复选框美化插件分享
2015/09/26 Javascript
JavaScript截取指定长度字符串点击可以展开全部代码
2015/12/04 Javascript
node.js与C语言 实现遍历文件夹下最大的文件,并输出路径,大小
2017/01/20 Javascript
JQuery 封装 Ajax 常用方法(推荐)
2017/05/21 jQuery
jquery实现左右轮播图效果
2017/09/28 jQuery
Angular路由ui-router配置详解
2018/08/01 Javascript
解决在vue项目中webpack打包后字体不生效的问题
2018/09/01 Javascript
详解vue 项目白屏解决方案
2018/10/31 Javascript
利用Python如何批量更新服务器文件
2018/07/29 Python
django中ORM模型常用的字段的使用方法
2019/03/05 Python
在python中使用nohup命令说明
2020/04/16 Python
python cv2.resize函数high和width注意事项说明
2020/07/05 Python
用python计算文件的MD5值
2020/12/23 Python
Python截图并保存的具体实例
2021/01/14 Python
python3判断IP地址的方法
2021/03/04 Python
详解CSS3 rem(设置字体大小) 教程
2017/11/21 HTML / CSS
部队万能检讨书
2014/02/20 职场文书
领导调研接待方案
2014/02/27 职场文书
《莫泊桑拜师》教学反思
2014/04/23 职场文书
我与祖国共奋进演讲稿
2014/09/13 职场文书
委托书的样本
2015/01/28 职场文书
环卫工人慰问信
2015/02/15 职场文书
确保工程质量承诺书
2015/04/29 职场文书
决心书格式范文
2015/09/23 职场文书
Python控制台输出俄罗斯方块的方法实例
2021/04/17 Python
Java界面编程实现界面跳转
2022/06/16 Java/Android
使用CSS实现音波加载效果
2023/05/07 HTML / CSS