v8知识图谱
v8知识图谱
- v8的基础环境
- v8执行流程
- 事件循环系统
- javascript的设计思想
- 垃圾回收系统
v8的基础环境
v8的基础环境
堆空间
- 树状存储结构
- 存储对象
- 存储闭包函数引用的原生类型
栈空间
- 先进后出
- 存储原生类型
全局执行上下文
- 初始化的this
- 全局作用域
- 全局对象
宿主环境
- 宿主类型
- 浏览器
- NodeJs
其它宿主
- 内置
- 内置函数
内置对象
- Chrome.window
- Node.global
事件循环系统
- 消息列表
- 任务调度系统
javascript的设计思想
javascript的设计思想
函数是一等公民
- 函数拥有普通类型的特性
- 基于对象设计
- 对象是动态的
- 支持闭包
- 函数表达式
类型系统和垃圾回收
- 类型系统
- 垃圾回收
作用域
- 源代码中定义变量的区域
- 静态作用域
- 动态作用域
- javascript是基于静态作用域的
- 作用域链
原型链继承
- 原型
- 原型链
- new关键字
事件循环系统
什么是事件循环系统
- JavaScript是单线程模式
- 单线程同时只执行一个任务
- 有新的任务就需要排队执行
- 引入消息队列
- 消息队列中的任务就是宏任务
- 任务调度器
- 循环读取消息队列中的任务
- 分派给指定的任务处理器
异步编程
- 回调函数模式
- Promise模式
- await/async模式