js的压缩及jquery压缩探讨(提高页面加载性能/保护劳动成果)


Posted in Javascript onJanuary 29, 2013

问题缘由:负责公司的开发平台研发工作,考虑的知识产权的保护工作,必须要考虑java的加密技术和js脚本的加密技术。在目前java加密很容易破解的情况下,还是先搞定js的加密和压缩,一方面可以提高页面加载性能,另外一方面也希望辛苦研发出来的成果得到一定的保护。

研究过程
1、先强烈鄙视一下哪些随便转载文章的家伙,给我制造了很大的麻烦!!网上很多帖子都不靠谱。。
2、首先想了解jquery使用什么压缩的, 网上找了半天,说法不一样,后来还是在jquery官网的最频繁问题中找到了答案,但这已经是绕了一大圈之后的事情了。
(a)根据我看到的一些信息,jquery压缩最早是用 Dean Edwards' Packer 进行压缩的,大概是在jquery1.3版本吧(我在一本jquery的书上看到的。)。这个东西出来的比较早,作者好像也是头 大牛,目前是3.0版本,好像是在线版本,我自己把代码去他网站上压缩,无法使用,会出错误。
(b)后面jquery换成yuicompressor 进行压缩,具体哪个版本不太清楚,有篇文章的作者说:他去jquery的svn中找了一下,发现有yuicompressor 的文件,然后他特意用jQuery.js试了一下,处理过的文件和jQuery.min.js一模一样。原帖地址。
(c) 偶滴神啊,最后我在jquery官网找到了这么一段话。How do I compress my code?

内容如下
Generally the best way to do it is to use the Google Closure Compiler (used by jQuery) or YUI compressor. jQuery provides a pre-minified version of jQuery for your convenience.
Packing JavaScript using Dean Edwards' Packer (specifically using the base64 encode) is not recommended, as the client-side decoding has significant overhead that outweighs the file-size benefits.
大致意思是说:jquery用的是google的开源js压缩工具,Google Closure Compiler和YUI compressor 是目前最佳的js压缩方式。 Dean Edwards‘ packer 是不推荐使用的!!

事后感想
1.其实我很早就注意到Google Closure Compiler这个工具了,但是受一个网友的误导,没有去试用。他提出2个理由,一是这东西开源没多久,二是这个会改写和优化你的代码结构且目前有几个严重的问题;我当时一直在找jquery是用什么压缩工具。 TMD这种技术文章中国人写的就是不可信,到处JB乱抄!!很多东西都要看官方网站的文档。
2.Google是一个伟大的公司,它的技术走在非常前沿,YUI之前是雅虎研发的,这几年雅虎业绩不佳,我想Google吸收了当前IT领域很多技术专家,我们应该相信它出品的东西都是精品。

Javascript 相关文章推荐
jQuery中:password选择器用法实例
Jan 03 Javascript
jquery实现标签支持图文排列带上下箭头按钮的选项卡
Mar 14 Javascript
jQuery实现的多滑动门,多选项卡效果代码
Mar 28 Javascript
JavaScript预解析及相关技巧分析
Apr 21 Javascript
jquery checkbox无法用attr()二次勾选问题的解决方法
Jul 22 Javascript
让编辑器支持word复制黏贴、截屏的js代码
Oct 17 Javascript
微信小程序 页面跳转和数据传递实例详解
Jan 19 Javascript
jQuery+CSS3实现点赞功能
Mar 13 Javascript
JavaScript中this的用法及this在不同应用场景的作用解析
Apr 13 Javascript
微信小程序实战之自定义toast(6)
Apr 18 Javascript
jquery使用iscorll实现上拉、下拉加载刷新
Oct 26 jQuery
Vue登录主页动态背景短视频制作
Sep 21 Javascript
JavaScript起点(严格模式深度了解)
Jan 28 #Javascript
一个页面元素appendchild追加到另一个页面元素的问题
Jan 27 #Javascript
JavaScript转换农历类实现及调用方法
Jan 27 #Javascript
Extjs中TabPane如何嵌套在其他网页中实现思路及代码
Jan 27 #Javascript
Extjs中的GridPanel隐藏列会显示在menuDisabled中解决方法
Jan 27 #Javascript
jQuery ajax serialize()方法的使用以及常见问题解决
Jan 27 #Javascript
js中parseFloat(参数1,参数2)定义和用法及注意事项
Jan 27 #Javascript
You might like
开发大型 PHP 项目的方法
2007/01/02 PHP
PHP备份数据库生成SQL文件并下载的函数代码
2012/02/05 PHP
PHP实现获取中英文首字母
2015/06/19 PHP
php中curl和soap方式请求服务超时问题的解决
2018/06/11 PHP
javascript支持firefox,ie7页面布局拖拽效果代码
2007/12/20 Javascript
颜色选择器 Color Picker,IE,Firefox,Opera,Safar
2010/11/25 Javascript
Javascript 遍历页面text控件详解
2014/01/06 Javascript
jQuery.parseJSON(json)将JSON字符串转换成js对象
2014/07/27 Javascript
JavaScript把数组作为堆栈使用的方法
2015/03/20 Javascript
全面解析bootstrap格子布局
2016/05/22 Javascript
JS验证input输入框(字母,数字,符号,中文)
2017/03/23 Javascript
jQuery中常用动画效果函数知识点整理
2018/08/19 jQuery
Javascript原生ajax请求代码实例
2020/02/20 Javascript
Vue如何实现变量表达式选择器
2021/02/18 Vue.js
python3读取MySQL-Front的MYSQL密码
2017/05/03 Python
python机器学习之神经网络实现
2018/10/13 Python
浅谈Python中的bs4基础
2018/10/21 Python
在PyCharm中三步完成PyPy解释器的配置的方法
2018/10/29 Python
对python:threading.Thread类的使用方法详解
2019/01/31 Python
python腾讯语音合成实现过程解析
2019/08/01 Python
python requests更换代理适用于IP频率限制的方法
2019/08/21 Python
golang/python实现归并排序实例代码
2020/08/30 Python
Pycharm 设置默认解释器路径和编码格式的操作
2021/02/05 Python
css3动画过渡实现鼠标跟随导航效果
2018/02/08 HTML / CSS
纽约手袋品牌:KARA
2018/03/18 全球购物
法律进企业活动方案
2014/03/04 职场文书
党的群众路线教育实践活动心得体会900字
2014/03/07 职场文书
开门红主持词
2014/04/02 职场文书
禁烟标语大全
2014/06/11 职场文书
滞留工资返还协议书
2014/10/19 职场文书
2014年银行客户经理工作总结
2014/11/12 职场文书
2014年体育教师工作总结
2014/12/03 职场文书
奠基仪式致辞
2015/07/30 职场文书
宾馆卫生管理制度
2015/08/06 职场文书
Python爬虫基础之爬虫的分类知识总结
2021/05/13 Python
在Oracle表中进行关键词搜索的过程
2022/06/10 Oracle