GC(V8)
V8 垃圾回收机制全梳理。覆盖分代回收策略(新生代 Scavenge 复制算法 + 老生代 Mark-Sweep / Mark-Compact)、V8 内存限制的原因(避免 STW 全停顿)、Orinoco 高级优化(增量标记 / 并发回收 / 懒清理)、常见内存泄漏场景(全局变量、定时器、闭包、游离 DOM)的排查流程(DevTools Performance + Memory Heap Snapshot),以及早期引用计数算法的弃用原因。
V8 垃圾回收机制全梳理。覆盖分代回收策略(新生代 Scavenge 复制算法 + 老生代 Mark-Sweep / Mark-Compact)、V8 内存限制的原因(避免 STW 全停顿)、Orinoco 高级优化(增量标记 / 并发回收 / 懒清理)、常见内存泄漏场景(全局变量、定时器、闭包、游离 DOM)的排查流程(DevTools Performance + Memory Heap Snapshot),以及早期引用计数算法的弃用原因。
JavaScript 代码从源码到执行的完整链路。覆盖 V8 引擎的 JIT 编译流程(Parser → AST → Ignition 字节码 → TurboFan 机器码 → 去优化)、执行上下文的三个核心组件(变量环境 / 词法环境 / This 绑定)、变量与函数提升(含 AO 示例)、作用域与作用域链、闭包本质,以及事件循环中宏任务与微任务的执行顺序(含 Node.js 与浏览器的差异)。
JavaScript 原型与原型链的底层机制。覆盖基于原型的 OOP 与基于类的 OOP 差异、显式原型 prototype 与隐式原型 __proto__ 的对应关系、Object 与 Function 的鸡和蛋问题(互相是对方实例)、手写 instanceof 判定逻辑、手写 new 操作符的 4 步实现(创建对象、绑定原型、绑定 this、返回结果),以及 ES6 之前最完美的寄生组合式继承范式。