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 相关文章推荐
window.location和document.location的区别分析
Dec 23 Javascript
jquery中加载图片自适应大小主要实现代码
Aug 23 Javascript
jquery加载图片时以淡入方式显示的方法
Jan 14 Javascript
Jquery插件实现点击获取验证码后60秒内禁止重新获取
Mar 13 Javascript
jQuery ajax方法传递中文时出现中文乱码的解决方法
Jul 25 Javascript
微信小程序 出现错误:{&quot;baseresponse&quot;:{&quot;errcode&quot;:-80002,&quot;errmsg&quot;:&quot;&quot;}}解决办法
Feb 23 Javascript
ie下js不执行的几种可能
Feb 28 Javascript
JS生成随机打乱数组的方法示例
Dec 23 Javascript
Angular实现的简单查询天气预报功能示例
Dec 27 Javascript
jquery实现的简单轮播图功能【适合新手】
Aug 17 jQuery
关于layui时间回显问题的解决方法
Sep 24 Javascript
Vue中关闭弹窗组件时销毁并隐藏操作
Sep 01 Javascript
根据邮箱的域名跳转到相应的登录页面的代码
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引用返回与取消引用的详解
2013/06/08 PHP
CodeIgniter中使用cookie的三种方式详解
2014/07/18 PHP
如何让CI框架支持service层
2014/10/29 PHP
php中注册器模式类用法实例分析
2015/11/03 PHP
PHP+mysql实现从数据库获取下拉树功能示例
2017/01/06 PHP
微信企业转账之入口类分装php代码
2018/10/01 PHP
javascript中字符串替换函数replace()方法与c# 、vb 替换有一点不同
2010/06/25 Javascript
21个JavaScript事件(Events)属性汇总
2014/12/02 Javascript
js显示当前日期时间和星期几
2015/10/22 Javascript
JavaScript 七大技巧(二)
2015/12/13 Javascript
使用微信小程序开发前端【快速入门】
2016/12/05 Javascript
微信浏览器禁止页面下拉查看网址实例详解
2017/06/28 Javascript
vue如何通过id从列表页跳转到对应的详情页
2018/05/01 Javascript
bootstrap下拉框动态赋值方法
2018/08/10 Javascript
在vue中使用express-mock搭建mock服务的方法
2018/11/07 Javascript
vue微信分享到朋友圈 vue微信发送给好友
2018/11/28 Javascript
vue实现鼠标移入移出事件代码实例
2019/03/27 Javascript
使用express获取微信小程序二维码小记
2019/05/21 Javascript
两个使用Python脚本操作文件的小示例分享
2015/08/27 Python
Django中的ajax请求
2018/10/19 Python
python训练数据时打乱训练数据与标签的两种方法小结
2018/11/08 Python
python3 实现对图片进行局部切割的方法
2018/12/05 Python
详解Python安装tesserocr遇到的各种问题及解决办法
2019/03/07 Python
numpy按列连接两个维数不同的数组方式
2019/12/06 Python
django admin管理工具自定义时间区间筛选器DateRangeFilter介绍
2020/05/19 Python
Django Admin 上传文件到七牛云的示例代码
2020/06/20 Python
python程序如何进行保存
2020/07/03 Python
Python logging模块原理解析及应用
2020/08/13 Python
英国领先的葡萄酒专家:Majestic Wine
2017/05/30 全球购物
在Java开发中如何选择使用哪种集合类
2016/08/09 面试题
企业员工薪酬方案
2014/06/04 职场文书
门面房租房协议书
2014/08/20 职场文书
房产授权委托书范本
2014/09/22 职场文书
小学教师个人工作总结2015
2015/04/20 职场文书
2015年人事科工作总结
2015/04/28 职场文书
CSS预处理框架——Stylus
2021/04/21 HTML / CSS