浅谈页面装载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 相关文章推荐
javascript学习笔记(一) 在html中使用javascript
Jun 18 Javascript
jquery创建一个ajax关键词数据搜索实现思路
Feb 26 Javascript
js加减乘除丢失精度问题解决方法
May 16 Javascript
javascript获取flash版本号的方法
Nov 20 Javascript
JavaScript在Android的WebView中parseInt函数转换不正确问题解决方法
Apr 25 Javascript
node.js调用C++开发的模块实例
Jul 03 Javascript
java必学必会之static关键字
Dec 03 Javascript
js实现漫天星星效果
Jan 19 Javascript
微信小程序之多列表的显示和隐藏功能【附源码】
Aug 06 Javascript
vue中$refs, $emit, $on, $once, $off的使用详解
May 26 Javascript
layui表格 列自动适应大小失效的解决方法
Sep 06 Javascript
js判断密码强度的方法
Mar 18 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
php 操作符与控制结构
2012/03/07 PHP
php利用cookies实现购物车的方法
2014/12/10 PHP
PHP面向对象之后期静态绑定功能介绍
2015/05/18 PHP
在Windows系统下使用PHP生成Word文档的教程
2015/07/03 PHP
Jquery获取元素的父容器对象示例代码
2014/02/10 Javascript
jQuery后代选择器用法实例
2014/12/23 Javascript
JQuery中extend的用法实例分析
2015/02/08 Javascript
jQuery实现分章节锚点“回到顶部”动画特效代码
2015/10/23 Javascript
javascript时间戳和日期字符串相互转换代码(超简单)
2016/06/22 Javascript
完美JQuery图片切换效果的简单实现
2016/07/21 Javascript
JavaScript 深层克隆对象详解及实例
2016/11/03 Javascript
浅谈vue的几种绑定变量的值 防止其改变的方法
2018/03/01 Javascript
深入了解JavaScript 防抖和节流
2019/09/12 Javascript
jQuery实现弹幕特效
2019/11/29 jQuery
如何在面试中手写出javascript节流和防抖函数
2020/10/22 Javascript
jquery实现拖拽添加元素功能
2020/12/01 jQuery
对vue生命周期的深入理解
2020/12/03 Vue.js
跟老齐学Python之编写类之一创建实例
2014/10/11 Python
python获取本机外网ip的方法
2015/04/15 Python
tensorflow识别自己手写数字
2018/03/14 Python
Python数据结构之哈夫曼树定义与使用方法示例
2018/04/22 Python
python获取微信小程序手机号并绑定遇到的坑
2018/11/19 Python
用Python逐行分析文件方法
2019/01/28 Python
python全栈要学什么 python全栈学习路线
2019/06/28 Python
python中open函数的基本用法示例
2019/09/07 Python
Pytorch中的VGG实现修改最后一层FC
2020/01/15 Python
pytorch方法测试——激活函数(ReLU)详解
2020/01/15 Python
详解python中的三种命令行模块(sys.argv,argparse,click)
2020/12/15 Python
CSS3简单实现照片墙
2014/12/12 HTML / CSS
Notino匈牙利:购买香水和化妆品
2019/04/12 全球购物
英国领先的隐形眼镜在线供应商:Lenstore.co.uk
2019/11/24 全球购物
入党积极分子自我鉴定
2014/02/18 职场文书
普通大学毕业生自荐信范文
2014/02/23 职场文书
2014年党员整改措施
2014/10/24 职场文书
公司员工奖惩制度
2015/08/04 职场文书
SpringBoot集成Druid连接池连接MySQL8.0.11
2021/07/02 Java/Android