页面装载js及性能分析方法介绍


Posted in Javascript onMarch 21, 2014

一、装载

先装载静态页面的引用js文件,然后查找引用文件中是否包含onload函数,比如main.js中包含onload函数,在main.js中查找是否有对其他js文件的引用,优先装载引用js文件,被引用中文件的装载顺序和main.js的顺序一致。
装载完毕后,开始执行onload函数。由于js执行顺序是顺序执行的,为提高页面相应速度,一般做法是在onload中只画页面,一些事件的绑定函数,ajax方法等可延后书写。

二、响应速度分析

1.借助工具进行分析
各大浏览器的开发者工具(最喜欢使用火狐)可以方便的查看各个js文件、html文件、css文件及图片的装载及执行时间。

2.硬编码分析
在第一步中我们基本能定位到瓶颈js文件了,在瓶颈js中,可以使用console.time('test')和console.Endtime('test')语句对js函数及代码块掐取执行时间。不过console语句只在非IE浏览器中执行有效,而在IE下会报错。如果你偏爱使用IE,那就使用时间戳吧。在掐取时,比较方便的方法是,直接掐住整个js文件,然后使用火狐浏览器,按F12可以在控制台中看到目标js中所有函数及代码块的耗时,即可定位到瓶颈代码处。

Javascript 相关文章推荐
JSON扫盲帖 JSON.as类教程
Feb 16 Javascript
jQuery 源码分析笔记(6) jQuery.data
Jun 08 Javascript
in.js 一个轻量级的JavaScript颗粒化模块加载和依赖关系管理解决方案
Jul 26 Javascript
JavaScript通过字典进行字符串翻译转换的方法
Mar 19 Javascript
JavaScript对象参数的引用传递
Jan 14 Javascript
jQuery Easyui 验证两次密码输入是否相等
May 13 Javascript
详解Angular中实现自定义组件的双向绑定的两种方法
Nov 23 Javascript
[jQuery] 事件和动画详解
Mar 05 jQuery
利用js-cookie实现前端设置缓存数据定时失效
Jun 18 Javascript
Javascript实现html转pdf高清版(提高分辨率)
Feb 19 Javascript
深入解读VUE中的异步渲染的实现
Jun 19 Javascript
OpenLayers3实现图层控件功能
Sep 25 Javascript
Js冒泡事件详解及阻止示例
Mar 21 #Javascript
js调用浏览器打印模块实现点击按钮触发自定义函数
Mar 21 #Javascript
js中把JSON字符串转换成JSON对象最好的方法
Mar 21 #Javascript
jquery插件冲突(jquery.noconflict)解决方法分享
Mar 20 #Javascript
将中国标准时间转换成标准格式的代码
Mar 20 #Javascript
如何将php数组或者对象传递给javascript
Mar 20 #Javascript
js 触发select onchange事件代码
Mar 20 #Javascript
You might like
乱谈我对耳机、音箱的感受
2021/03/02 无线电
PHP性能优化准备篇图解PEAR安装
2011/12/05 PHP
Laravel构建即时应用的一种实现方法详解
2017/08/31 PHP
js中cookie的使用详细分析
2008/05/28 Javascript
javascript 全角转换实现代码
2009/07/17 Javascript
多浏览器兼容的获取元素和鼠标的位置的js代码
2009/12/15 Javascript
javascript 获取表单file全路径
2009/12/31 Javascript
js multiple全选与取消全选实现代码
2012/12/04 Javascript
javascript firefox 自动加载iframe 自动调整高宽示例
2013/08/27 Javascript
使用原生js封装webapp滑动效果(惯性滑动、滑动回弹)
2014/05/06 Javascript
jQuery中prevAll()方法用法实例
2015/01/08 Javascript
原生js编写autoComplete插件
2016/04/13 Javascript
js和C# 时间日期格式转换的简单实例
2016/05/28 Javascript
详解Angular结合zTree异步加载节点数据
2018/01/20 Javascript
vue cli构建的项目中请求代理与项目打包问题
2018/02/26 Javascript
angular 未登录状态拦截路由跳转的方法
2018/10/09 Javascript
微信小程序学习笔记之获取位置信息操作图文详解
2019/03/29 Javascript
面试题:react和vue的区别分析
2019/04/08 Javascript
Vue实现点击箭头上下移动效果
2020/06/11 Javascript
跟老齐学Python之字典,你还记得吗?
2014/09/20 Python
Python实现的维尼吉亚密码算法示例
2018/04/12 Python
python 2.7 检测一个网页是否能正常访问的方法
2018/12/26 Python
详解python深浅拷贝区别
2019/06/24 Python
Tensorflow 使用pb文件保存(恢复)模型计算图和参数实例详解
2020/02/11 Python
浅析python表达式4+0.5值的数据类型
2020/02/26 Python
使用pygame编写Flappy bird小游戏
2020/03/14 Python
python实现批量修改文件名
2020/03/23 Python
python torch.utils.data.DataLoader使用方法
2020/04/02 Python
【HTML5】3D模型--百行代码实现旋转立体魔方实例
2016/12/16 HTML / CSS
台湾百利市购物中心:e-Payless
2017/08/16 全球购物
生物有机护肤品:Aurelia Probiotic Skincare
2018/01/31 全球购物
全球独特生活方式产品和礼品购物网站:AHAlife
2018/09/18 全球购物
机械专业应届生求职信
2013/12/12 职场文书
铁路工务反思材料
2014/02/07 职场文书
三年级学生评语
2014/04/23 职场文书
大学生心理活动总结
2014/07/04 职场文书