From: jindw.spaces.live.com/blog/cns!4D0B98F5F0C51177!114.entry
先发一段脚本压缩示例,展示一下JSA语法压缩和优化功能。
- try {
- //xxxx();
- }
-
- catch (e) {
- yyyy();
- function f1() {
- }
- }
-
- finally {
- zzzz();
- }
-
- function f2(var1) {
- var var2 = 2;
- var var3 = 3;
- var withObject = {var2:-2}
- with(withObject){
- alert(var2);
- }
- }
压缩结果(经过格式化,便于查阅):
- zzzz();
- function f2(A) {
- var var2 = 2;
- var B = 3;
- var C = {var2:-2};
- with (C) {
- alert(var2);
- }
- }
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 代码
- function(){
- var withObject = {variable1:1}
- var variable1 = 2;
- with(withObject){
- alert(variable1);
- }
- }
将压缩成 :
- function(){
- var _1={variable1:1};
- var _2=2;
- with(_1){
- alert(_2);
- }
- }
这明显是错误的,这个垃圾没有注意javascript某些特殊语法,和动态性。
对eval函数,catch操作,with语句,都未作任何处理。
相比之下JSA的是当前我知道的最安全最有效的压缩工具。
JSA 不仅提供代码压缩功能,还可以做格式化,脚本分析。
脚本分析功能可以用于查看脚本信息,以及查找脚本中的潜在问题。
比如查看脚本中申明了那些函数,变量。
使用了那些外部变量。等等。。。
分享到:
相关推荐
JavaScript分析、压缩工具 JavaScript Analyser JavaScript Analyser是一款高效的JavaScript分析、压缩工具,旨在提供一款安全、可靠的压缩工具,帮助开发者优化JavaScript代码、提高网站性能。该工具支持语法压缩...
JavaScript Analyser是一款针对JavaScript代码的分析和压缩工具,旨在提高代码的运行效率并减小文件体积,从而优化网页加载速度。这款工具包含了两种主要的压缩方式:语法压缩和文本压缩。 1. **语法压缩**: 语法...
nmon是一款小巧但强大的Linux性能监控及分析工具。压缩包中包括nmon所有45个操作系统版本和nmon_analyser_v66.xls。nmon_analyser用于根据nmon输出的日志文件生成excel图表。
2) nmon_analyser性能分析工具 可以帮助对通过 nmon 性能工具捕获的性能数据进行分析。它允许性能专家完成下列任务: 以电子表格的形式查看相应的数据 消除‘错误的’数据 生成向客户进行演示的图形 3) 此资源...
这个压缩包中有nmon_analyser使用帮助说明以及nmon的使用说明,以及nmon分析报告的分析方法。 -------nmon_analyser使用说明--------- 1、打开nmon analyser v版本号.xls的文件 2、设置宏的安全性:低。 3、...
电化学阻抗分析软件EIS Spectrum Analyser 1.0 版本
《nmon监控工具与nmon_analyser_34a分析工具详解》 在IT运维领域,监控系统性能是至关重要的工作,它可以帮助我们及时发现并解决潜在的问题,确保服务的稳定运行。在这个主题中,我们将深入探讨两款极具实用价值的...
**nmon及nmon_analyser:强大的性能分析工具** nmon(Nigel's Performance Monitor)是一款由Nigel Griffiths开发的系统监控工具,适用于Linux和Unix等大部分服务器系统。这款工具自2016年以来持续更新,最新的版本...
nmon_analyser工具有助于分析使用thenmon性能工具捕获的性能数据。它使性能专家可以: 以电子表格形式查看数据 消除“不良”数据 制作图表以呈现给客户 该工具还会自动为输出的每个主要部分生成图形。 另外,该...
在nmon文件夹下面会产生一个性能监控文件(主机号+时间.nmon文件),导出日志...解析工具这里使用nmon analyser v66.xlsm,点击下列按钮导入刚刚导出的日志,如果使用wps打开提示缺少宏,需要下载这个宏文件进行安装。
nmon(Nigel's Performance Monitor for Linux)和nmonanalyser是两款非常实用的工具,专用于Linux系统的性能监控和分析。 **nmon_linux** nmon是Andrew Morgan开发的一款轻量级命令行工具,它能够实时监控Linux...
nmon是一个实时监控CPU、内存、磁盘I/O、网络等系统资源的工具,而nmon_analyser则对nmon收集的数据进行处理和分析,生成直观的报告,便于用户理解和优化系统性能。 二、nmon_analyser的主要功能 1. 数据收集与...
**nmon_analyser:一款强大的系统监控与分析工具** *nmon_analyser* 是一个专为Linux系统设计的性能监控和分析工具,它基于*nmon*(Nigel's Performance Monitor)的数据,帮助管理员深入理解系统的运行状态,及时...
在压缩包子文件列表中,"MPEG-2 TS packet analyser.exe"是实际的分析工具执行文件,用户可以通过运行这个程序来启动分析。"change log.htm"可能包含了该工具的更新历史和改进记录,对于跟踪软件的发展和解决新出现...
aix和linux上网络流量分析工具,通过nmon analyser.xls工具可以把监控的结果文件转换成excel文件,方便分析系统的各项资源占用情况。 1、 打开nmon analyser.xls工具; 2、 调整excel宏安全性:工具-宏-安全性 ...
《nmon分析工具详解——基于nmon_analyser_v69.zip》 在IT运维领域,有效监控系统性能是至关重要的。"nmon分析工具"是这样一款针对Linux环境的专业工具,它能深入剖析由nmon(Nigel's Performance Monitor)生成的...
文档"NA_UserGuide v54.docx"是nmon analyser v54版的用户指南,它详尽地介绍了如何使用这个工具,包括如何导入nmon生成的日志文件,如何解析和理解分析结果,以及如何利用这些信息来优化系统性能。用户指南通常会...
而nmon Analyser则是配合nmon使用的数据分析工具,它可以帮助我们更好地理解和分析nmon收集的数据。 ### nmon 简介 nmon是一个命令行工具,用户可以通过简单的命令行参数配置来启动它,实时显示系统各项性能指标。...