1、结构化程序设计
1.1 JS执行粒度
- JS Context => Realm
- 宏任务
- 微任务(promise)
- 函数调用(Execution Context)
- 语句/声明
- 表达式
- 直接量/变量/this
Realm 里面有一套完整的Js内置对象。
在JS中,函数表达式和对象直接量都会创建对象。
使用. 做隐式类型转换也会创建对象。
这些对象也是有原型的。如果没有realm ,就不知道原型是什么。
作业(选做):用G6 antv 可视化Realm中的所有对象
重学前端:JavaScript对象:你知道全部的对象分类吗?
1.2 函数调用
执行上下文栈 execution context stack
execution context
code evaluation
function
script or module
generator
Realm
LexicalEnvironment 词法环境
this
new.target
super
变量
variableEnvironment 变量环境 历史遗留包袱 仅仅用于处理var声明
function* foo(){
yield 1;
yield 2;
yield 3;
}
var g = foo();
Function - Closure
2、浏览器
2.1 浏览器工作原理
从输入一个URL到页面展示
2.2 OSI七层网络模型
TCP/IP
HTTP
http client
xhr