博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
性能分析工具firebug.console.profile(title)
阅读量:5829 次
发布时间:2019-06-18

本文共 1318 字,大约阅读时间需要 4 分钟。

很多的web开发人员都使用Mozilla firefox并且绝大多数都使用firebug来测试、调试前端代码,firebug在调试html+css方面的能力是毋庸置疑的,但仅仅使用它来完成这样的任务并没有发挥firebug的巨大潜能。 JavaScript性能 随着web apps越来越庞大,JavaScript的性能也被推到风头浪尖,在此之前或许你已经知道哪些操作会减缓JavaScript程序运行速度,并且养成良好的编码习惯。 正如你所知道的,使用appendChild来增加Dom节点的效率要比innerHTML低下,那么为什么会这样呢?又如何验证这个观点的正确性?还有我最近发现的,在声明数组的时,应该使用数组直接量: 1vararr = []; 而不是: 1vararr = newArray; 但是我所说的,也未必是正确的吧! console.profile() 这是firebug中一个很强大的方法,它可以提供给你测试代码片段执行的时间和一些性能分析数据,前提是测试的代码片段中要有function的执行,否则会提示“无任何可记录的活动”,如下图: 一个简单的测试例子: 01functioncreateArray1(){ 02for(vari=0;i<100000;i++){ 03vararr = []; 04} 05} 06functioncreateArray2(){ 07for(vari=0;i<100000;i++){ 08vararr = newArray; 09} 10} 11console.profile('a'); 12createArray1(); 13console.profileEnd('a'); 14 15console.profile('b'); 16createArray2(); 17console.profileEnd('b'); 直观的数据: console.time() 由于createArray1和createArray2内部并没有执行其他的function,所以从上图中,我们仅仅能够得到测试代码片段执行所需的时间,如果基于仅满足这个需求,通过console.time()就完全可以实现了。 1console.time('a'); 2createArray1(); 3console.timeEnd('a'); 综合的数据分析 我们从不期盼某款浏览器,在运行自己编写程序的时候崩溃或者速度缓慢的让人抓狂,不过真的遇到了,还是应该先找到影响代码执行效率的问题所在,然后 才能针对某个算法做一些优化处理来减少JavaScript解释器的运算压力,加速程序运行。这正是profile的用武之地,透析firebug的数据 图,能让我们快速定位到测试代码执行全过程中,哪个function调用次数最多,耗时最多,从这个function的算法和各个细节入手,就可以迅速解 决问题。 最后附上一个例子: 1console.profile('a'); 2varNo = that.getBetNo(); 3console.profileEnd('a'); 更加丰满的数据: 转自:振之

转载地址:http://auodx.baihongyu.com/

你可能感兴趣的文章
全球六大顶级域名动态:8月下旬.COM新增超16.8万
查看>>
Swift 属性 笔记更新
查看>>
2014年度域名商报告:万网域名总量达213万 净增67万
查看>>
全球域名商解析新增量21强:万网坚守第三 易名第七
查看>>
Debian无线网卡为何是wlan1不是wlan0
查看>>
Linux用到的正则表达式
查看>>
JavaScript 创建对象: 方法一览与最佳实践
查看>>
rabbitmq单机创建集群,指定端口号
查看>>
HttpClient多线程并发问题
查看>>
轻松实现网络压缩包的“透明”查询
查看>>
LVS和Heartbeat原理与实战
查看>>
CentOS6.2 yum安装配置LNMP服务器(Nginx+PHP+MySQL)
查看>>
pdf与word之间互选转换软件
查看>>
编译安装linux 2.6.28.10新内核
查看>>
React动画实践
查看>>
mysql 内部通过事件和游标自动更新表(状态值)
查看>>
职业倦怠的干预
查看>>
Nginx的location用法备忘
查看>>
Hadoop HA 搭建
查看>>
Smart SVN-使用Smart SVN 管理项目代码文件(在windows上)
查看>>