一款JavaScript压缩工具:X2JSCompactor


Posted in Javascript onJune 13, 2007

去年写的一个JavaScript压缩工具,用于x2blog.cn的js压缩。不过一直没有对外发布,现在拿来充个文章数吧,老不更新Blog可不好,呵呵

概述:
X2JavascriptCompactor可以将多个Javascript脚本文件打包成一个文件,并删除原始文件中的注释、无用空白以及换行。不仅可以有效减少网络传输量,同时使脚本文件难以被分析和破解。软件同时支持多个文件的同时打包,即可以建立多个输出文件,每个输出文件对应到一定的输入文件,每个输出文件对应的输入文件之间互不相关。

说明:
在网上一直未能找到合适的JS打包工具,压缩后的文件常常不能执行,于是就自己写了这个工具,开发是基于.net 1.1框架的,所以要正确执行必须装有.net framework,可以到微软网站免费下载:http://download.microsoft.com/download/7/b/9/7b90644d-1af0-42b9-b76d-a2770319a568/dotnetfx.exe。同时,为求开发效率,系统并未对Javascript作详尽的语法分析,因此为确保压缩后的Javascript文件能正确执行,必须符合下面的约定:
1.原始文件能正确执行;
2.构造体末不一定需要加分号:即var f=function(){},var a={p1:1,p2:2}这样的语句末无需分号,当然加了也可以;
3.普通语句结尾必须有分号:如var a=1; alert(a);这样的普通语句结尾必须有分号。
相信即使没有这个约定,大家也会按照这样的语法书写Javascript,在此说明只是强调一下,毕竟Javascript规范并不强制要求分号结尾。

使用流程:
1.新建或打开一个项目,后缀为*.jcp;
2.建立输出文件,这里保存压缩后的文件内容,你可以选择已经存在的文件,或者新建一个文件;
3.选中一个输出文件,为此文件选择对应的输入文件,在左侧列表会显示出来;
4.调整输入文件的顺序,使得其符合执行顺序要求,可以通过上下箭头来执行;
5.点击开始压缩按钮,软件会自动分析输入文件,并压缩打包到输出文件;
6.你可以根据需要决定是否保存项目文件。

本地下载

Javascript 相关文章推荐
js 未结束的字符串常量错误解决方法
Jun 13 Javascript
jquery中防刷IP流量软件影响统计的一点对策
Jul 10 Javascript
js时间戳格式化成日期格式的多种方法
Nov 11 Javascript
jquery实现简易的移动端验证表单
Nov 08 Javascript
微信小程序 安全包括(框架、功能模块、账户使用)详解
Jan 16 Javascript
bootstrap+jQuery 实现下拉菜单中复选框全选和全不选效果
Jun 12 jQuery
Javascript实现时间倒计时效果
Jul 15 Javascript
微信小程序checkbox组件使用详解
Jan 31 Javascript
Vue使用vue-area-linkage实现地址三级联动效果的示例
Jun 27 Javascript
Vue+Express实现登录注销功能的实例代码
May 05 Javascript
微信域名检测接口调用演示步骤(含PHP、Python)
Dec 08 Javascript
js实现文字头像的生成代码
Mar 07 Javascript
类之Prototype.js学习
Jun 13 #Javascript
JavaScript语法着色引擎(demo及打包文件下载)
Jun 13 #Javascript
Apply an AutoFormat to an Excel Spreadsheet
Jun 12 #Javascript
Add Formatted Data to a Spreadsheet
Jun 12 #Javascript
excel操作之Add Data to a Spreadsheet Cell
Jun 12 #Javascript
List Installed Hot Fixes
Jun 12 #Javascript
List the UTC Time on a Computer
Jun 11 #Javascript
You might like
CI操作cookie的方法分析(基于helper类库)
2016/03/28 PHP
extjs 学习笔记 四 带分页的grid
2009/10/20 Javascript
基于Jquery的表格隔行换色,移动换色,点击换色插件
2010/12/22 Javascript
jquery.artwl.thickbox.js  一个非常简单好用的jQuery弹出层插件
2012/03/01 Javascript
javascript中自定义对象的属性方法分享
2013/07/12 Javascript
JavaScript中prototype为对象添加属性的误区介绍
2013/10/15 Javascript
JavaScript实现多栏目切换效果
2016/12/12 Javascript
JS使用ActiveXObject实现用户提交表单时屏蔽敏感词功能
2017/06/20 Javascript
Angular中自定义Debounce Click指令防止重复点击
2017/07/26 Javascript
原生JavaScript实现remove()和recover()功能示例
2018/07/24 Javascript
配置node服务器并且链接微信公众号接口配置步骤详解
2019/06/21 Javascript
Vue项目中ESlint规范示例代码
2019/07/04 Javascript
JavaScript数组排序的六种常见算法总结
2020/08/18 Javascript
原生JavaScript实现五子棋游戏
2020/11/09 Javascript
[05:15]DOTA2英雄梦之声_第16期_灰烬之灵
2014/06/21 DOTA
在Python下进行UDP网络编程的教程
2015/04/29 Python
python算法演练_One Rule 算法(详解)
2017/05/17 Python
Python基于回溯法解决01背包问题实例
2017/12/06 Python
Python解决走迷宫问题算法示例
2018/07/27 Python
Python日期时间Time模块实例详解
2019/04/15 Python
Django之form组件自动校验数据实现
2020/01/14 Python
python实现xlwt xlrd 指定条件给excel行添加颜色
2020/07/14 Python
Python实现邮件发送的详细设置方法(遇到问题)
2021/01/18 Python
浅析CSS3 中的 transition,transform,translate之间区别和作用
2020/03/26 HTML / CSS
分享全球十款超强HTML5开发工具
2014/05/14 HTML / CSS
加拿大大码女装购物网站:Penningtons
2020/12/26 全球购物
某科技软件测试面试题
2013/05/19 面试题
团委竞选演讲稿
2014/04/24 职场文书
个人收入证明范本
2014/09/18 职场文书
保送生自荐信范文
2015/03/26 职场文书
幼儿园综治宣传月活动总结
2015/05/07 职场文书
烈士陵园观后感
2015/06/08 职场文书
Python网络编程之ZeroMQ知识总结
2021/04/25 Python
PyTorch dropout设置训练和测试模式的实现
2021/05/27 Python
基于Go语言构建RESTful API服务
2021/07/25 Golang
如何用H5实现好玩的2048小游戏
2022/07/23 HTML / CSS