JS代码优化技巧之通俗版(减少js体积)


Posted in Javascript onDecember 23, 2011

细读完这篇文章,够你优化大半天的了,关于JS优化方法大都脱离不了这三种方法。

JS代码优化技巧之通俗版(减少js体积)

(网页总大小为155.k,而JS就占了100.3K)

是时候优化下JS了

关于JS优化的文章已经很多了,大多技术性很强,像什么变量、字符串、类型,就不做介绍了,也不需要介绍,我也不懂,你知道了也没用。大多数站长都是“拿来主义”,我只需要告诉JS怎么放,删那里就可以了。

现在的网站都加的有统计代码、分享工具、评论列表、相关文章插件等工具,而要实现强大的功能,必须使用JS文件,正是这些JS插件,再增强了网站功能的同时,也给影响了网站速度。

最常用的JS优化办法

通过博客调用JS来看,目前最影响速度的为无觅插件(952ms),拿福能广告(434ms)。如果确实要用可以保留,适当的根据官方教材做做优化,下面卢松松介绍几个最常用的JS优化方法。

方法一:把不重要的JS放在页面最底部

这是最简单,也是效果最好的优化方法,把不重要的JS通通放到页面的最下面body的上面,实现异步加载,也就是等网页都加载完了,最后在加载这些不重要的JS,这样就不影响网页速度了。

如低调与华丽模板中公共的util.js公共文件,默认效果为,浏览网页时会在网页中出现“回顶部、写评论”特效。现在把wumii(无觅插件JS)和jiathis(分享工具JS)统一整合到util.js文件中了。

JS代码优化技巧之通俗版(减少js体积)

(不重要的JS都放到页面最底部了)

当然,其他网站也需要这样做:把不重要的JS通通放到页面最底部。

方法二:合并JS文件

合并JS,也就是减少HTTP请求,少给服务器请求一次就加快一点速度,而合并两个原本独立的JS就需要点技术了,但这难不倒我们,告诉大家一个最简单的方法:

不管三七二十一,先把A文件直接粘贴到B文件中,合并后删除网页中的A文件,如果网页运行正常,就OK;如果一些特效失效,那就还原,换C文件合并。总会有两个不冲突的JS文件的。

例如我博客上的百度广告管家,有6个广告位,默认情况是要进行6次HTTP请求的,因为是第三方JS,一次请求最快要花234ms,而6次请求就就需要花2秒,也就是说因为这个广告管家打开网页就要额外增加2秒。

JS代码优化技巧之通俗版(减少js体积)

(第二段JS就是把6个请求变成了1个)

按照官方教程把JS合并后,6个广告位的广告请求合并为1次请求,大幅降低js请求次数,有效减少页面渲染被阻塞的情况,提升广告加载速度。

方法三:给JS文件减肥

咱不讨论什么三目运算符、减少对象查找、如何让JS简洁,咱就用“JS减肥工具”。通常这类工具会把JS文件中几百行的代码压缩成一行,使体积变小。推荐工具:http://javascriptcompressor.com/ 或软件版本(容错效果好)

因为空行等问题,有时候使用这类工具会使JS功能失效,而最简单的办法是用Dreamweaver,把压缩后的JS放入DW中,DW会自动提示你那里有误,把错误的地方另起一行,或还原回去即可。

最后再给个网友的现身说法吧:

JS代码优化技巧之通俗版(减少js体积)

当你的站点随着时间的推移慢慢地做大的时候,你就会发现很多问题出来的,其中一个就是越来越臃肿庞大,因此运行的速度也就会慢了下来。优化,尽力去优化站点,就变得非常重要了。

这些方法都通俗易懂,希望对大家有用!

Javascript 相关文章推荐
Firefox window.close()的使用注意事项
Apr 11 Javascript
jquery中通过父级查找进行定位示例
Jun 28 Javascript
javascript使用正则表达式检测IP地址
Dec 03 Javascript
在web中js实现类似excel的表格控件
Sep 01 Javascript
jQuery实现带延时功能的水平多级菜单效果【附demo源码下载】
Sep 21 Javascript
利用JavaScript实现拖拽改变元素大小
Dec 14 Javascript
js实现滑动到页面底部自动加载更多功能
Feb 15 Javascript
vue自定义指令的创建和使用方法实例分析
Dec 04 Javascript
微信小程序 setData 对 data数据影响问题
Apr 18 Javascript
JS实现单张或多张图片持续无缝滚动的示例代码
May 10 Javascript
js绘制一条直线并旋转45度
Aug 21 Javascript
JavaScript实现HTML导航栏下拉菜单
Nov 25 Javascript
关于跨站脚本攻击问题
Dec 22 #Javascript
js DOM的学习笔记
Dec 22 #Javascript
jquery 年会抽奖程序
Dec 22 #Javascript
jQuery中创建实例与原型继承揭秘
Dec 21 #Javascript
jquery随机展示头像代码
Dec 21 #Javascript
JavaScript面向对象程序设计三 原型模式(上)
Dec 21 #Javascript
jquery $.getJSON()跨域请求
Dec 21 #Javascript
You might like
?生?D片??C字串
2006/12/06 PHP
php通过修改header强制图片下载的方法
2015/03/24 PHP
php curl 上传文件代码实例
2015/04/27 PHP
几行代码轻松实现PHP文件打包下载zip
2017/03/01 PHP
PHP流Streams、包装器wrapper概念与用法实例详解
2017/11/17 PHP
PHP Class SoapClient not found解决方法
2018/01/20 PHP
aspx中利用js实现确认删除代码
2010/07/22 Javascript
一个可拖拽列宽表格实例演示
2012/11/26 Javascript
JavaScript继承模式粗探
2016/01/12 Javascript
JS正则表达式比较常见用法
2016/01/26 Javascript
手机端转换rem适应
2017/04/01 Javascript
BootStrap selectpicker后台动态绑定数据
2017/06/01 Javascript
Vue中用props给data赋初始值遇到的问题解决
2018/11/27 Javascript
vue2.0中set添加属性后视图不能更新的解决办法
2019/02/22 Javascript
原生js实现3D轮播图
2020/03/21 Javascript
详解Vue之事件处理
2020/07/10 Javascript
python实现在pickling的时候压缩的方法
2014/09/25 Python
python中threading超线程用法实例分析
2015/05/16 Python
Windows10下 python3.7 安装 facenet的教程
2019/09/10 Python
Python 余弦相似度与皮尔逊相关系数 计算实例
2019/12/23 Python
Python selenium使用autoIT上传附件过程详解
2020/05/26 Python
html5实现多文件的上传示例代码
2014/02/13 HTML / CSS
html5中嵌入视频自动播放的问题解决
2020/05/25 HTML / CSS
世界上最大的罕见唱片、CD和音乐纪念品网上商店:991.com
2018/05/03 全球购物
自我评价是什么
2014/01/04 职场文书
写给女朋友的道歉信
2014/01/08 职场文书
优秀团支部事迹材料
2014/02/08 职场文书
内衣营销方案
2014/03/15 职场文书
大学新生军训方案
2014/05/03 职场文书
小学校长先进事迹材料
2014/05/13 职场文书
村长党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
发展党员工作情况汇报
2014/10/28 职场文书
商务邀请函
2015/01/30 职场文书
党员廉政准则心得体会
2016/01/20 职场文书
毕业生就业推荐表自我鉴定
2019/06/20 职场文书
Python爬虫之爬取某文库文档数据
2021/04/21 Python