`
liudaoru
  • 浏览: 1576150 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JavaScript分析、压缩工具 JavaScript Analyser[z]

    博客分类:
  • Ajax
阅读更多

From: jindw.spaces.live.com/blog/cns!4D0B98F5F0C51177!114.entry

先发一段脚本压缩示例,展示一下JSA语法压缩和优化功能。

  1. try {  
  2.     //xxxx();  
  3. }  
  4.   
  5. catch (e) {  
  6.     yyyy();  
  7.     function f1() {  
  8.     }  
  9. }  
  10.   
  11. finally {  
  12.     zzzz();  
  13. }  
  14.   
  15. function f2(var1) {  
  16.     var var2 = 2;  
  17.     var var3 = 3;  
  18.     var withObject = {var2:-2}  
  19.     with(withObject){  
  20.         alert(var2);  
  21.     }  
  22. }  

 

压缩结果(经过格式化,便于查阅):

  1. zzzz();  
  2. function f2(A) {  
  3.     var var2 = 2;  
  4.     var B = 3;  
  5.     var C = {var2:-2};  
  6.     with (C) {  
  7.         alert(var2);  
  8.     }  
  9. }   

 

JSA的压缩过程分两步

第一步是语法压缩,类似于Dojo ShrinkSafe,但比他安全,且更加有效。

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

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

与其他压缩工具压缩率比较:

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
      基于文本的压缩,我没有细看其中逻辑,但是这种压缩出问题的可能性很低,我们的压缩工具也使用到他的压缩算法,在JSI 1.1 a8 及
其集成的第三方类库的测试中,未见异常。而且还有知名框架JQuery使用,相信不会有问题。

补充(2007-03-12):今天发现,这个东西在分析JavaScript多行字符串语法时,有bug。不过这个问题在经过JSA语法压缩之后,将不复存在。


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

 

javascript 代码
  1. function(){  
  2.   var withObject = {variable1:1}  
  3.   var variable1 = 2;  
  4.   with(withObject){  
  5.     alert(variable1);  
  6.   }  
  7. }  

将压缩成 :
  1. function(){  
  2. var _1={variable1:1};  
  3. var _2=2;  
  4. with(_1){  
  5. alert(_2);  
  6. }  
  7. }  


这明显是错误的,这个垃圾没有注意javascript某些特殊语法,和动态性。
对eval函数,catch操作,with语句,都未作任何处理。

相比之下JSA的是当前我知道的最安全最有效的压缩工具。
JSA 不仅提供代码压缩功能,还可以做格式化,脚本分析。

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

相关推荐

    发布一个高效的JavaScript分析、压缩工具 JavaScript Analyser

    JavaScript分析、压缩工具 JavaScript Analyser JavaScript Analyser是一款高效的JavaScript分析、压缩工具,旨在提供一款安全、可靠的压缩工具,帮助开发者优化JavaScript代码、提高网站性能。该工具支持语法压缩...

    JavaScript分析、压缩工具JavaScript Analyser

    JavaScript Analyser是一款针对JavaScript代码的分析和压缩工具,旨在提高代码的运行效率并减小文件体积,从而优化网页加载速度。这款工具包含了两种主要的压缩方式:语法压缩和文本压缩。 1. **语法压缩**: 语法...

    nmon+analyser Linux性能监控及分析工具

    nmon是一款小巧但强大的Linux性能监控及分析工具。压缩包中包括nmon所有45个操作系统版本和nmon_analyser_v66.xls。nmon_analyser用于根据nmon输出的日志文件生成excel图表。

    nmon性能工具 与 nmon_analyser性能分析工具

    2) nmon_analyser性能分析工具 可以帮助对通过 nmon 性能工具捕获的性能数据进行分析。它允许性能专家完成下列任务: 以电子表格的形式查看相应的数据 消除‘错误的’数据 生成向客户进行演示的图形 3) 此资源...

    nmon分析工具nmon_analyser V3.3.e

    这个压缩包中有nmon_analyser使用帮助说明以及nmon的使用说明,以及nmon分析报告的分析方法。 -------nmon_analyser使用说明--------- 1、打开nmon analyser v版本号.xls的文件 2、设置宏的安全性:低。 3、...

    电化学阻抗分析软件EIS Spectrum Analyser 1.0 版本

    电化学阻抗分析软件EIS Spectrum Analyser 1.0 版本

    nmon监控工具 及 nmon_analyser_34a分析工具

    《nmon监控工具与nmon_analyser_34a分析工具详解》 在IT运维领域,监控系统性能是至关重要的工作,它可以帮助我们及时发现并解决潜在的问题,确保服务的稳定运行。在这个主题中,我们将深入探讨两款极具实用价值的...

    nmon及nmon_analyser 性能分析工具最新版本).rar

    **nmon及nmon_analyser:强大的性能分析工具** nmon(Nigel's Performance Monitor)是一款由Nigel Griffiths开发的系统监控工具,适用于Linux和Unix等大部分服务器系统。这款工具自2016年以来持续更新,最新的版本...

    性能测试工具-nmon analyser v51_2.xlsm

    nmon_analyser工具有助于分析使用thenmon性能工具捕获的性能数据。它使性能专家可以: 以电子表格形式查看数据 消除“不良”数据 制作图表以呈现给客户 该工具还会自动为输出的每个主要部分生成图形。 另外,该...

    nmon软件包和分析工具-nmon analyser

    在nmon文件夹下面会产生一个性能监控文件(主机号+时间.nmon文件),导出日志...解析工具这里使用nmon analyser v66.xlsm,点击下列按钮导入刚刚导出的日志,如果使用wps打开提示缺少宏,需要下载这个宏文件进行安装。

    nmon_linux和nmonanalyser工具

    nmon(Nigel's Performance Monitor for Linux)和nmonanalyser是两款非常实用的工具,专用于Linux系统的性能监控和分析。 **nmon_linux** nmon是Andrew Morgan开发的一款轻量级命令行工具,它能够实时监控Linux...

    性能检测工具nmon-analyser

    nmon是一个实时监控CPU、内存、磁盘I/O、网络等系统资源的工具,而nmon_analyser则对nmon收集的数据进行处理和分析,生成直观的报告,便于用户理解和优化系统性能。 二、nmon_analyser的主要功能 1. 数据收集与...

    nmon_analyser 用于监控的分析工具

    **nmon_analyser:一款强大的系统监控与分析工具** *nmon_analyser* 是一个专为Linux系统设计的性能监控和分析工具,它基于*nmon*(Nigel's Performance Monitor)的数据,帮助管理员深入理解系统的运行状态,及时...

    MPEG2 TS分析工具

    在压缩包子文件列表中,"MPEG-2 TS packet analyser.exe"是实际的分析工具执行文件,用户可以通过运行这个程序来启动分析。"change log.htm"可能包含了该工具的更新历史和改进记录,对于跟踪软件的发展和解决新出现...

    nmon analyser v33e3

    aix和linux上网络流量分析工具,通过nmon analyser.xls工具可以把监控的结果文件转换成excel文件,方便分析系统的各项资源占用情况。 1、 打开nmon analyser.xls工具; 2、 调整excel宏安全性:工具-宏-安全性 ...

    nmon_analyser_v69.zip

    《nmon分析工具详解——基于nmon_analyser_v69.zip》 在IT运维领域,有效监控系统性能是至关重要的。"nmon分析工具"是这样一款针对Linux环境的专业工具,它能深入剖析由nmon(Nigel's Performance Monitor)生成的...

    【nmon】nmon分析器nmon_analyser

    文档"NA_UserGuide v54.docx"是nmon analyser v54版的用户指南,它详尽地介绍了如何使用这个工具,包括如何导入nmon生成的日志文件,如何解析和理解分析结果,以及如何利用这些信息来优化系统性能。用户指南通常会...

    nmon 和 nmon analyser工具

    而nmon Analyser则是配合nmon使用的数据分析工具,它可以帮助我们更好地理解和分析nmon收集的数据。 ### nmon 简介 nmon是一个命令行工具,用户可以通过简单的命令行参数配置来启动它,实时显示系统各项性能指标。...

Global site tag (gtag.js) - Google Analytics