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 相关文章推荐
JQery jstree 大数据量问题解决方法
Mar 09 Javascript
Jquery.LazyLoad.js修正版下载,实现图片延迟加载插件
Mar 12 Javascript
js如何判断不同系统的浏览器类型
Oct 28 Javascript
flash遮住div问题的正确解决方法
Feb 27 Javascript
.NET微信公众号开发之创建自定义菜单
Jul 16 Javascript
JavaScript实现将文本框的值插入指定位置的方法
Aug 13 Javascript
JS去除空格和换行的正则表达式(推荐)
Jun 14 Javascript
React组件之间的通信的实例代码
Jun 27 Javascript
老生常谈js数据类型
Aug 03 Javascript
vuex进阶知识点巩固
May 20 Javascript
浅谈Vue服务端渲染框架Nuxt的那些事
Dec 21 Javascript
记录一次完整的react hooks实践
Mar 11 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
用PHP函数解决SQL injection
2006/12/09 PHP
PHPLog php 程序调试追踪工具
2009/09/09 PHP
修改PHP脚本使WordPress拦截垃圾评论的方法示例
2015/12/10 PHP
extjs form textfield的隐藏方法
2008/12/29 Javascript
js修改table中Td的值(定义td的双击事件)
2013/01/10 Javascript
热点新闻滚动特效的js代码
2013/08/17 Javascript
多个jQuery版本共存的处理方案
2015/03/17 Javascript
javascript中日期函数new Date()的浏览器兼容性问题
2015/09/05 Javascript
整理Javascript数组学习笔记
2015/11/29 Javascript
JavaScript获取css行间样式,内连样式和外链样式的简单方法
2016/07/18 Javascript
利用jquery实现验证输入的是否是数字、小数,包含保留几位小数
2016/12/07 Javascript
详解用webpack2搭建angular2的项目
2017/06/22 Javascript
Node批量爬取头条视频并保存方法
2018/09/20 Javascript
详解angular2 控制视图的封装模式
2018/12/27 Javascript
React 全自动数据表格组件——BodeGrid的实现思路
2019/06/12 Javascript
Vue实现拖放排序功能的实例代码
2019/07/08 Javascript
javascript实现简单搜索功能
2020/03/26 Javascript
jQuery实现移动端扭蛋机抽奖
2020/11/08 jQuery
[57:37]EG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
[02:50]【扭转乾坤,只此一招】DOTA2永雾林渊版本开启新篇章
2020/12/22 DOTA
python定时器(Timer)用法简单实例
2015/06/04 Python
Python的Scrapy爬虫框架简单学习笔记
2016/01/20 Python
python实现差分隐私Laplace机制详解
2019/11/25 Python
使用 prometheus python 库编写自定义指标的方法(完整代码)
2020/06/29 Python
Python+OpenCV图像处理——图像二值化的实现
2020/10/24 Python
CSS3+JavaScript实现炫酷呼吸效果的示例代码
2020/06/15 HTML / CSS
eDreams意大利:南欧领先的在线旅行社
2018/11/23 全球购物
SmartBuyGlasses德国:购买太阳镜和眼镜
2019/08/20 全球购物
哈曼俄罗斯官方网上商店:Harman.club
2020/07/24 全球购物
环保倡议书300字
2014/05/15 职场文书
技术岗位竞聘演讲稿
2014/05/16 职场文书
高等教育学专业自荐书
2014/06/17 职场文书
乡镇爱国卫生月活动总结
2014/06/25 职场文书
2014年个人技术工作总结
2014/12/08 职场文书
龙潭大峡谷导游词
2015/02/10 职场文书
借条如何写
2015/05/26 职场文书