js性能优化
文章平均质量分 65
huisiyu
前端开发道路上的一名探索者
展开
-
笔记---JavaScript性能优化(四)
JS代码优化慎用全局变量缓存全局变量通过原型对象添加附加方法避开闭包陷阱避免属性访问方法使用For循环的优化选择最优的循环方式文档碎片优化节点添加克隆优化节点操作js性能测试网站堆栈中代码执行过程 慎用全局变量 全局变量定义在全局执行上下文,是所有作用域链的顶端 全局变量会一直存活在上下文执行栈中,直到程序退出 如果在程序的某个局部作用域定义了同名的全局变量,那么会造成覆盖之前的全局变量或污染全局 全局变量的执行效率要比局部变量的执行效率低。 缓存全局变量 应用中有不可避免的全局变量,要将其缓存到局部 在局原创 2021-03-25 18:28:16 · 63 阅读 · 0 评论 -
笔记--JavaScript性能优化(三)
性能监测介绍Performance工具使用步骤内存问题的现象监控内存的方式任务管理器监控内存Timeline记录内存堆快照查找分离DOM分离DOM的说明案例判断是否存在频繁GC Performance工具 它是一个可以时刻监控内存的工具。 使用步骤 1、浏览器输入目标地址 2、F12选择性能 3、开启录制功能,访问具体页面 4、执行用户行为后,一段时间后停止录制 5、查看分析界面中记录的内存信息 内存问题的现象 1、页面出现延迟加载或经常性暂停(可能在频繁的出现垃圾回收) 2、页面持续性出现糟糕的性能(可能原创 2021-03-25 10:54:15 · 143 阅读 · 1 评论 -
笔记---JavaScript性能优化(二)
JS V8执行引擎垃圾回收了解V8引擎V8垃圾回收策略V8内存分配新生代对象回收实现回收细节说明老生代对象回收实现老生代对象介绍回收实现标记增量优化垃圾回收 V8引擎 它是JS执行引擎,即时编译,内存设限。 V8垃圾回收策略 回收的是储存在内存中堆里面的复杂数据(object array) V8中常用的GC算法: 分代回收 空间复制 标记清除 标记整理 标记增量 V8内存分配 如图所示: V8内存空间一分为二 小空间用于存储新生代对象(64位:32M 32位:16M) 新生代对象指的是存活时间较短的对象原创 2021-03-25 10:53:32 · 156 阅读 · 0 评论 -
笔记---javascript性能优化(一)
JS语言层面的性能优化内存管理垃圾回收GC算法引用计数算法 内存管理 申请内存空间 使用内存空间 释放内存空间 垃圾回收 js中内存管理是自动的 对象不再被引用的时候会被认为是垃圾 对象不能从根上访问到时会被认为是垃圾 js中的可达对象: 可以访问到的对象就是可达对象 可达的标准就是从根出发是否能够被找到 JS中的根可以理解为是全局变量 GC算法 GC就是垃圾回收 GC算法: GC是一种机制,垃圾回收器完成具体的工作。工作内容就是查找垃圾,释放其所占空间,回收空间。算法就是在工作时查找和回收所遵循的规则 常原创 2021-03-23 12:22:04 · 67 阅读 · 0 评论