一款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 相关文章推荐
jquery取消选择select下拉框示例代码
Feb 22 Javascript
jQuery中prepend()方法用法实例
Dec 25 Javascript
JavaScript在浏览器标题栏上显示当前日期和时间的方法
Mar 19 Javascript
JS实现的表格操作类详解(添加,删除,排序,上移,下移)
Dec 22 Javascript
jQuery动画显示和隐藏效果实例演示(附demo源码下载)
Dec 31 Javascript
Google 地图叠加层实例讲解
Aug 06 Javascript
JavaScript 拖拽实例代码
Sep 21 Javascript
jQuery tagsinput在h5邮件客户端中应用详解
Sep 26 Javascript
JS实现发送短信验证后按钮倒计时功能(防止刷新倒计时失效)
Jul 07 Javascript
jQuery内容过滤选择器与子元素过滤选择器用法实例分析
Feb 20 jQuery
angular异步验证防抖踩坑实录
Dec 01 Javascript
手把手教你如何编译打包video.js
Dec 09 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
php数组函数序列之asort() - 对数组的元素值进行升序排序,保持索引关系
2011/11/02 PHP
php 验证码(倾斜,正弦干扰线,黏贴,旋转)
2013/06/29 PHP
php中mkdir()函数的权限问题分析
2016/09/24 PHP
详解配置 Apache 服务器支持 PHP 文件的解析
2017/02/15 PHP
看了就知道什么是JSON
2007/12/09 Javascript
jquery 简单导航实现代码
2009/09/11 Javascript
js 动态选中下拉框
2009/11/26 Javascript
javascript 显示当前系统时间代码
2009/12/28 Javascript
Javascript学习笔记4 Eval函数
2010/01/11 Javascript
JavaScript DOM学习第四章 getElementByTagNames
2010/02/19 Javascript
基于jQuery试卷自动排版系统
2010/07/18 Javascript
jquery清空表单数据示例分享
2014/02/13 Javascript
Javascript高级技巧分享
2014/02/25 Javascript
用jQuery获取table中行id和td值的实现代码
2016/05/19 Javascript
AngularJS基础 ng-init 指令简单示例
2016/08/02 Javascript
canvas 弹幕效果(实例分享)
2017/01/11 Javascript
JavaScript中一些特殊的字符运算
2017/08/17 Javascript
axios全局注册,设置token,以及全局设置url请求网段的方法
2018/09/25 Javascript
详解Vue 如何监听Array的变化
2019/06/06 Javascript
laydate只显示时分 不显示秒的功能实现方法
2019/09/28 Javascript
Vue中通过属性绑定为元素绑定style行内样式的实例代码
2020/04/30 Javascript
Vue和React有哪些区别
2020/09/12 Javascript
[06:44]2014DOTA2国际邀请赛-钥匙体育馆开战 开幕式振奋人心
2014/07/19 DOTA
python算法学习之基数排序实例
2013/12/18 Python
python自动发微信监控报警
2019/09/06 Python
Python数据可视化:饼状图的实例讲解
2019/12/07 Python
Django基于客户端下载文件实现方法
2020/04/21 Python
美国电视购物HSN官网:HSN
2016/09/07 全球购物
介绍下java.util.Arrays类
2012/10/16 面试题
关于保护环境的标语
2014/06/09 职场文书
计算机科学与技术专业求职信
2014/09/03 职场文书
学校食品安全责任书
2015/01/29 职场文书
2015年学校禁毒工作总结
2015/05/27 职场文书
地震捐款简报
2015/07/21 职场文书
十大冰系宝可梦排名,颜值最高的阿罗拉九尾,第三使用率第一
2022/03/18 日漫
Python 使用 Frame tkraise() 方法在 Tkinter 应用程序中的Frame之间切换
2022/04/24 Python