浅谈页面装载js及性能分析方法


Posted in Javascript onDecember 09, 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 相关文章推荐
JS验证身份证有效性示例
Oct 11 Javascript
Node.js模块加载详解
Aug 16 Javascript
详解JavaScript for循环中发送AJAX请求问题
Jun 23 Javascript
Vue数据驱动模拟实现2
Jan 11 Javascript
vue下跨域设置的相关介绍
Aug 26 Javascript
Angular通过指令动态添加组件问题
Jul 09 Javascript
JS+HTML5 canvas绘制验证码示例
Dec 05 Javascript
Vue中axios拦截器如何单独配置token
Dec 27 Javascript
Preload基础使用方法详解
Feb 03 Javascript
jQuery使用jsonp实现百度搜索的示例代码
Jul 08 jQuery
JavaScript实现手风琴效果
Feb 18 Javascript
浅析JavaScript中的变量提升
Jun 01 Javascript
深入分析jquery解析json数据
Dec 09 #Javascript
WEB前端设计师常用工具集锦
Dec 09 #Javascript
13 款最热门的 jQuery 图像 360 度旋转插件推荐
Dec 09 #Javascript
JQuery中使用on方法绑定hover事件实例
Dec 09 #Javascript
jQuery实现HTML5 placeholder效果实例
Dec 09 #Javascript
jQuery on方法传递参数示例
Dec 09 #Javascript
jquery实现侧边弹出的垂直导航
Dec 09 #Javascript
You might like
利用static实现表格的颜色隔行显示
2006/10/09 PHP
解析php入库和出库
2013/06/25 PHP
php读取和保存base64编码的图片内容
2017/04/22 PHP
JQUERY CHECKBOX全选,取消全选,反选方法三
2008/08/30 Javascript
javascript 事件处理、鼠标拖动效果实现方法详解
2012/05/11 Javascript
jquery方法+js一般方法+js面向对象方法实现拖拽效果
2012/08/30 Javascript
nodejs教程 安装express及配置app.js文件的详细步骤
2013/05/11 NodeJs
jquery实现的可隐藏重现的靠边悬浮层实例代码
2013/05/27 Javascript
Javascript四舍五入Math.round()与Math.pow()使用介绍
2013/12/27 Javascript
JavaScript实现的石头剪刀布游戏源码分享
2014/08/22 Javascript
浅谈Javascript变量作用域问题
2014/12/16 Javascript
jQuery插件Validate实现自定义校验结果样式
2016/01/18 Javascript
bootstrap弹出层的多种触发方式
2017/05/10 Javascript
原生JavaScript实现的简单省市县三级联动功能示例
2017/05/27 Javascript
angularjs定时任务的设置与清除示例
2017/06/02 Javascript
详解Vue.js iview实现树形权限表(可扩展表)
2018/09/30 Javascript
vue 公共列表选择组件,引用Vant-UI的样式方式
2020/11/02 Javascript
使用Python操作Elasticsearch数据索引的教程
2015/04/08 Python
理解python正则表达式
2016/01/15 Python
对numpy中的transpose和swapaxes函数详解
2018/08/02 Python
使用Django2快速开发Web项目的详细步骤
2019/01/06 Python
Python 寻找局部最高点的实现
2019/12/05 Python
python微信公众号开发简单流程实现
2020/03/09 Python
浅谈python 调用open()打开文件时路径出错的原因
2020/06/05 Python
Python 测试框架unittest和pytest的优劣
2020/09/26 Python
Python之qq自动发消息的示例代码
2021/02/18 Python
NBA欧洲商店(法国):NBA Europe Store FR
2016/10/19 全球购物
伦敦剧院门票:From The Box Office
2018/06/30 全球购物
英国派对礼服和连衣裙购物网站:TFNC London
2018/07/07 全球购物
英国哈罗德园艺:Harrod Horticultural
2020/03/31 全球购物
高中竞选班长演讲稿
2014/04/24 职场文书
优秀员工演讲稿
2014/05/19 职场文书
洗手间标语
2014/06/23 职场文书
学校学习雷锋活动总结
2014/07/03 职场文书
Vue实现跑马灯样式文字横向滚动
2021/11/23 Vue.js
Redis基本数据类型哈希Hash常用操作命令
2022/06/01 Redis