如何使用 chrome devtool 分析前端代码执行耗时和内存占用

如何分析代码执行耗时

代码执行耗时这块,大家应该都知道使用 Performance 面板中的 火焰图,火焰图中每个方块的宽度代表执行耗时,方块叠加的深度代表调用栈的深度。通过火焰图可以很直观地展示出代码调用关系,当你不熟悉某个框架、源码中的代码逻辑,又不希望一行行去看源码,火焰图就是最好的工具。

在分析性能的时候,为排除插件的影响,需要启用无痕模式

此外我们还可以看到每一行代码执行的时间。在火焰图中找到长任务,点击顶部 Task,点击 Button-Up,这时候可以看到根据耗时列出的调用栈:
在这里插入图片描述
找到那个执行耗时最长的,然后点击右侧源码地址,可以跳到 source 对应的源码,可以看到左边展示了每一行代码执行的耗时:
在这里插入图片描述

如何分析内存占用

内存占用可以使用 Memory 面板进行分析。一共有三种内存分析工具:

  • Snapshot:某个时间点的 堆内存快照
  • TimeLine:实时的按照 时间线 显示的内存分配情况
  • Sampling:采样 的方式收集内存分配情况

请添加图片描述
如果想要看到按照时间线的实时分配情况,可以用第二种工具:TimeLine。

加载页面,点击录制,右边就会实时展示内存分配情况:
请添加图片描述
我们录到 6s 点击停止。可以看到有两条竖线,分别代表了两次内存分配。点击其中一条竖线,可以看到内存分配详情。
请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值