脚本分析、压缩、混淆工具 JSA新版本发布,压缩效率提高大约10%

所属分类: 网络编程 / JavaScript 阅读数: 1112
收藏 0 赞 0 分享
SA 1.0 Alpha发布,压缩效率提高大约10%
压缩算法改进:

    实现了自己的文本压缩算法

        * 提高了压缩比率以及解压效率。

    优化了语法压缩

        * 合并连续var申明,
        * 删除了多余var申明,
        * 删除了多余大括弧({、}),
        * 删除了多余分号(;)。

UI改进:

    * 自动编码识别
    * 支持文件拖放
    * 支持JAVA1.4.2+ 当jar打开方式为java时,可双击运行,但,若JAR打开方式被修改(如winrar),请使用如下方式:
      CMD>java -jar xx.jar
    * 格式化
      注释只能在各语句之间,插在语句中间的注释有可能丢失,在格式化的时候,算bug吧。
    * 压缩参数设置
      操作->设置:
      执行语法压缩:将替换局部变量,删除冗余语法。
      执行文本压缩:将脚本文本分词、替换压缩。执行时可通过eval( 解压函数() )方式还原。
      兼容IE5、NS3:老版本的浏览器对正则表达式支持优先,是否需要兼容他们(需要采用稍微复杂一点的解压函数)。
      执行文本压缩的条件设置:设置何时采用文本压缩,有两项,比率要求和大小要求;因为eval是需要额外开销的,所以,只有当文本压缩的比率小于指定值且文件大小大于指定值时才采用文本压缩。


ANT Task

    * 默认编码 :取JRE的默认编码,可能随机器不同而改变,所以,推荐手动指定器编码方式(eg:charset="utf-8"/charset="GBK")
    * jsicompile 任务:编译JSI (压缩,预装载编译,定制启动文件)
    * jscompress 压缩脚本

ANT Task 示例
jsicompiler 示例(处理JSI及其集成的第三方脚本)
xml 代码 
复制代码 代码如下:


<target name="compress" depends="init">    
    <jsicompile destDir="ant/temp/scripts" rebuildboot="true" charset="utf-8">    
        <fileset dir="web/scripts">    
            <include name="*/**/*.*" />    
            <include name="*.*" />    
            <exclude name="preload/**" />    
        </fileset>    

        <preloadgroup path="code-decorator.js">    
            <fileset dir="web/scripts">    
                <include name='js/io/__$package.js' />    
                <include name='js/io/request.js' />    
                <include name='js/io/writer.js' />    
                <include name='js/xml/__$package.js' />    
                <include name='js/xml/template.js' />    
                <include name='js/xml/tag.js' />    
                <include name='js/util/__$package.js' />    
                <include name='js/util/collections.js' />    
                <include name='org/xidea/syntax/__$package.js' />    
                <include name='org/xidea/syntax/syntax-parser.js' />    
                <include name='org/xidea/decorator/__$package.js' />    
                <include name='org/xidea/decorator/code.js' />    
            </fileset>    
        </preloadgroup>    
    </jsicompile>    
</target> 
   
jscompress 示例(压缩普通脚本)   
xml 代码  

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]
更多精彩内容其他人还在看

Angular使用Md5加密的解决方法

这篇文章主要介绍了Angular使用Md5加密的解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

详解JS构造函数中this和return

本文通过实例代码给大家介绍了JS构造函数中this和return,需要的朋友参考下吧
收藏 0 赞 0 分享

ES6中Array.find()和findIndex()函数的用法详解

ES6为Array增加了find(),findIndex函数。find()函数用来查找目标元素,找到就返回该元素,找不到返回undefined,而findIndex()函数也是查找目标元素,找到就返回元素的位置,找不到就返回-1。下面通过实例详解,需要的朋友参考下吧
收藏 0 赞 0 分享

JS闭包的几种常见形式实例详解

本文通过实例代码给大家详细介绍了js闭包的几种常见形式,代码简单易懂,非常不错,具有参考借鉴价值,需要的朋友参考下
收藏 0 赞 0 分享

ES6中Array.copyWithin()函数的用法实例详解

ES6为Array增加了copyWithin函数,用于操作当前数组自身,用来把某些个位置的元素复制并覆盖到其他位置上去。下面重点给大家介绍ES6中Array.copyWithin()函数的用法,需要的朋友参考下
收藏 0 赞 0 分享

Javascript 严格模式use strict详解

严格模式:由ECMA-262规范定义的JavaScript标准,对javascrip的限制更强。这篇文章主要介绍了Javascript 严格模式use strict详解 ,需要的朋友可以参考下
收藏 0 赞 0 分享

引入JavaScript时alert弹出框显示中文乱码问题

今天在HTML中引入JavaScript文件运行时,alert弹出的提示框中文显示为乱码,怎么解决此问题呢?下面小编给大家带来了引入JavaScript时alert弹出框显示中文乱码问题的解决方法,一起看看吧
收藏 0 赞 0 分享

AngularJs 延时器、计时器实例代码

这篇文章主要介绍了AngularJs 延时器、计时器实例代码,需要的朋友可以参考下
收藏 0 赞 0 分享

JS分页的实现(同步与异步)

这篇文章主要介绍了JS分页的实现(同步与异步),需要的朋友可以参考下
收藏 0 赞 0 分享

Angularjs自定义指令实现分页插件(DEMO)

由于最近的一个项目使用的是angularjs1.0的版本,涉及到分页查询数据的功能,后来自己就用自定义指令实现了该功能,下面小编把实例demo分享到脚本之家平台,需要的朋友参考下
收藏 0 赞 0 分享
查看更多