一个高效的JavaScript压缩工具下载集合


Posted in Javascript onMarch 06, 2007

与其他压缩工具压缩率比较: 
1. JavaScript Compressor(http://dean.edwards.name/packer/ ) 
    与他自己的压缩工具代码为例(v2.02) packer压缩后大小为 7,428 字节(去除注释)。 
    而我们的压缩工具可以压缩至7,256  字节 
     7256 / 7428 = 0.9768443726440496 
2.Dojo ShrinkSafe (粗糙的东西,既低效又危险,建议原有用户赶紧换掉) 
    与他自己的框架源代码为例(v0.4.1): 
    他自己压缩大小为149,518 字节,而我们压缩后可以缩小至81,261 字节 
     81261 / 149518 = 0.5434864029748927 

安全性说明:
 1.JavaScript Compressor  TBCompressor(YUI Compressor) 推荐
      基于文本的压缩,我没有细看其中逻辑,但是这种压缩出问题的可能性很低,我们的压缩工具也使用到他的压缩算法,在JSI 1.1 a8 及 
其集成的第三方类库的测试中,未见异常。而且还有知名框架JQuery使用,相信不会有问题。 

2.Dojo ShrinkSafe 危险!!!!! 
   使用较短的名字替换掉长的局部变量名,这是一个极其不安全的压缩工具,举例说明: 

java 代码

function(){  
  var withObject = {variable1:1}  
  var variable1 = 2;  
  with(withObject){  
    alert(variable1);  
  }  
}  

将压缩成 
java 代码

function(){  
var _1={variable1:1};  
var _2=2;  
with(_1){  
alert(_2);  
}  
}  

这明显是错误的,这个垃圾没有注意javascript某些特殊语法,和动态性。 
对eval函数,catch操作,with语句,都未作任何处理。 
相比之下JSA的是当前我知道的最安全最有效的压缩工具。 
JSA 不仅提供代码压缩功能,还可以做格式化,脚本分析。 

脚本分析功能可以用于查看脚本信息,以及查找脚本中的潜在问题。 
比如查看脚本中申明了那些函数,变量。 
使用了那些外部变量。等等。。。

JSA的压缩过程分两步,第一步是语法压缩,类似于Dojo ShrinkSafe,但比他安全,也比他有效。

第二步是文本压缩,目前采用的是
JavaScript Compressor的压缩算法。
(http://dean.edwards.name/packer/ )

这些都可以在设置窗口设置。

默认情况先用语法压缩,当文件大于1000k且采用文本压缩仍然可以压缩到原来大小90%时才在原来基础上采用文本压缩。

下载地址:
http://sourceforge.net/project/showfiles.php?group_id=175776
或者
http://forum.xidea.org文件列表

Javascript 相关文章推荐
High Performance JavaScript(高性能JavaScript)读书笔记分析
May 05 Javascript
谈谈关于JavaScript 中的 MVC 模式
Apr 11 Javascript
Knockout自定义绑定创建方法
Dec 26 Javascript
微信小程序 Template详解及简单实例
Jan 05 Javascript
如何写好你的JavaScript【推荐】
Mar 02 Javascript
JS按钮闪烁功能的实现代码
Jul 21 Javascript
angular中实现li或者某个元素点击变色的两种方法
Jul 27 Javascript
JavaScript实现计数器基础方法
Oct 10 Javascript
vue基于mint-ui实现城市选择三级联动
Jun 30 Javascript
Element UI 自定义正则表达式验证方法
Sep 04 Javascript
React Hooks 实现和由来以及解决的问题详解
Jan 17 Javascript
实例讲解React 组件生命周期
Jul 08 Javascript
禁止F5等快捷键的JS代码
Mar 06 #Javascript
服务端 VBScript 与 JScript 几个相同特性的写法 By shawl.qiu
Mar 06 #Javascript
javascript 简单高效判断数据类型 系列函数 By shawl.qiu
Mar 06 #Javascript
javascript实现划词标记+划词搜索功能
Mar 06 #Javascript
用一段js程序来实现动画功能
Mar 06 #Javascript
用javascript动态调整iframe高度的方法
Mar 06 #Javascript
静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。
Mar 06 #Javascript
You might like
php之readdir函数用法实例
2014/11/13 PHP
php批量添加数据与批量更新数据的实现方法
2014/12/16 PHP
PHP实现链式操作的原理详解
2016/09/16 PHP
jquery 操作单选框,复选框,下拉列表实现代码
2009/10/27 Javascript
JavaScript中的一些定位属性[图解]
2010/07/14 Javascript
关于JS中的闭包浅谈
2013/08/23 Javascript
Javascript中String的常用方法实例分析
2015/06/13 Javascript
JS实现的5级联动Select下拉选择框实例
2015/08/17 Javascript
深入剖析JavaScript:Object类型
2016/05/10 Javascript
多个上传文件用js验证文件的格式和大小的方法(推荐)
2017/03/09 Javascript
详解在AngularJS的controller外部直接获取$scope
2017/06/02 Javascript
vue超时计算的组件实例代码
2018/07/09 Javascript
vue项目中使用scss的方法步骤
2019/05/16 Javascript
Openlayers绘制地图标注
2020/09/28 Javascript
[02:16]卖萌的僵尸 DOTA2神话信使飞僵小宝来袭
2014/03/24 DOTA
[03:23]我的刀塔你不可能这么可爱 第一期金萌萌的故事
2014/06/20 DOTA
[01:02:47]EG vs Secret 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.21.mp4
2020/07/19 DOTA
Python实现在线程里运行scrapy的方法
2015/04/07 Python
在Python的Django框架中编写错误提示页面
2015/07/22 Python
Django中login_required装饰器的深入介绍
2017/11/24 Python
TensorFlow实现MLP多层感知机模型
2018/03/09 Python
使用python进行拆分大文件的方法
2018/12/10 Python
使用Python和Prometheus跟踪天气的使用方法
2019/05/06 Python
Lombok插件安装(IDEA)及配置jar包使用详解
2020/11/04 Python
canvas烟花特效锦集
2018/01/17 HTML / CSS
德国香水、化妆品和护理产品网上商店:Parfumdreams
2018/09/26 全球购物
购买正版游戏和游戏激活码:Green Man Gaming
2019/11/06 全球购物
我们的节日清明节活动方案
2014/03/05 职场文书
安全协议书范本
2014/04/21 职场文书
社团活动总结书
2014/06/27 职场文书
汉语专业毕业生自荐信
2014/07/06 职场文书
公司合作意向书范文
2014/07/30 职场文书
商场促销活动策划方案
2014/08/18 职场文书
预备党员个人总结
2015/02/14 职场文书
一定要知道的 25 个 Vue 技巧
2021/11/02 Vue.js
box-shadow单边阴影的实现
2023/05/21 HTML / CSS