js 性能优化
内存管理
内存:由可读写单元组成,表示一片可操作空间
管理:人为的去操作一片空间的申请、使用、释放
内存管理:开发者主动申请空间、使用空间、释放空间
简单的一个内存管理流程:
//申请
let obj = {};
//使用
obj.name = 'lg';
//释放
obj = null;
文章图片
引用计数算法
文章图片
文章图片
文章图片
何为循环引用对象
文章图片
标记清除算法实现原理
文章图片
文章图片
可以解决引用计数算法中无法回收循环引用的对象
文章图片
回收的空间很有可能不连续,碎片化
标记整理算法 【js 性能优化】
文章图片
文章图片
文章图片
文章图片
认识V8
1.即使编译
2.内存设限
文章图片
如何回收新生代对象
新生代指的是存活时间较短的对象
回收过程采用复制算法+标记整理
新生代内存空间分为使用空间:From,空闲空间:T
如何回收老年代对象
文章图片
文章图片
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 数据库设计与优化
- Java内存泄漏分析系列之二(jstack生成的Thread|Java内存泄漏分析系列之二:jstack生成的Thread Dump日志结构解析)
- Improve|Improve Nested Conditionals(优化嵌套的条件语句) 面对大量的if-else语句
- 首屏时间,你说你优化了,那你倒是计算出给给我看啊!
- 数据库|SQL行转列方式优化查询性能实践
- 性能测试中QPS和TPS的区别
- iOS内存对齐原则
- #12-UITableView|#12-UITableView 优化方案
- javascript|javascript 性能测试笔记