浅谈页面装载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 相关文章推荐
URI、URL和URN之间的区别与联系
Dec 20 Javascript
JavaScript词法作用域与调用对象深入理解
Nov 29 Javascript
jQuery图片滚动图片的效果(另类实现)
Jun 02 Javascript
javascript 数组排序函数sort和reverse使用介绍
Nov 21 Javascript
Javascript核心读书有感之语言核心
Feb 01 Javascript
angularjs 源码解析之scope
Aug 22 Javascript
node.js Sequelize实现单实例字段或批量自增、自减
Dec 08 Javascript
理解 Node.js 事件驱动机制的原理
Aug 16 Javascript
vue elementui form表单验证的实现
Nov 11 Javascript
Vue仿微信app页面跳转动画效果
Aug 21 Javascript
vue封装可复用组件confirm,并绑定在vue原型上的示例
Oct 31 Javascript
浅谈vue中使用编辑器vue-quill-editor踩过的坑
Aug 03 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
整理的9个实用的PHP库简介和下载
2010/11/09 PHP
分享一个超好用的php header下载函数
2014/01/31 PHP
PHP使用get_headers函数判断远程文件是否存在的方法
2014/11/28 PHP
php生成图片验证码的实例讲解
2015/08/03 PHP
PHP直接修改表内容DataGrid功能实现代码
2015/09/24 PHP
PHP+Ajax无刷新带进度条图片上传示例
2017/02/08 PHP
PHP实现的简单异常处理类示例
2017/05/04 PHP
自写的利用PDO对mysql数据库增删改查操作类
2018/02/19 PHP
jquery实现居中弹出层代码
2010/08/25 Javascript
IE 当eval遇上function的处理
2011/08/09 Javascript
JQuery1.6 使用方法三
2011/11/23 Javascript
JavaScript语言对Unicode字符集的支持详解
2014/12/30 Javascript
Javascript毫秒数用法实例
2015/02/05 Javascript
jQuery选择器源码解读(四):tokenize方法的Expr.preFilter
2015/03/31 Javascript
JavaScript数组去重的两种方法推荐
2016/04/05 Javascript
浅谈JS验证表单文本域输入空格的问题
2017/02/14 Javascript
xmlplus组件设计系列之文本框(TextBox)(3)
2017/05/03 Javascript
react开发教程之React 组件之间的通信方式
2017/08/12 Javascript
Windows下Node爬虫神器Puppeteer安装记
2019/01/09 Javascript
微信小程序提取公用函数到util.js及使用方法示例
2019/01/10 Javascript
vue 翻页组件vue-flip-page效果
2020/02/05 Javascript
vue 虚拟DOM的原理
2020/10/03 Javascript
[01:07:19]DOTA2-DPC中国联赛 正赛 CDEC vs XG BO3 第一场 1月19日
2021/03/11 DOTA
python中assert用法实例分析
2015/04/30 Python
Python自动化运维之IP地址处理模块详解
2017/12/10 Python
python实现dijkstra最短路由算法
2019/01/17 Python
Django中使用极验Geetest滑动验证码过程解析
2019/07/31 Python
Python生命游戏实现原理及过程解析(附源代码)
2019/08/01 Python
豪华床上用品、床单和浴室必需品:Peacock Alley
2019/09/04 全球购物
美国领先的机场停车聚合商:Airport Parking Reservations
2020/02/28 全球购物
纯净、自信、100%的羊绒服装:360Cashmere
2021/02/20 全球购物
理工科学生的自我评价
2013/12/15 职场文书
人事主管岗位职责
2014/01/30 职场文书
求职信的正确写法
2014/07/10 职场文书
社区创先争优承诺书
2014/08/30 职场文书
行为习惯主题班会
2015/08/14 职场文书