The JavaScript Interpreter, Interpreted
summary
Explains that JavaScript creates a runtime execution context (three kinds: global, function, eval) then turns activation records into a variable object with parameters, hoisted functions and undefined variables so hoisting is real and block scope is absent only function or global scope exists not block scope, notes V8 may compile to machine code instead of interpreting, shows closures as inner functions retaining parent variable objects, and demos an esprima rewrite that exposes scopes and works.
AI-written summary · about
chapters (15)
- 0:00Introduction
- 0:49Managing Complexity
- 2:18Functions
- 3:11Conclusion
- 3:58Execution Context
- 4:19Execution Contexts
- 4:48Function Execution Context
- 5:25Executing Context
- 6:06Visualizing Execution Context
- 6:33Execution Context Creation
- 7:40Variable Instantiation
- 9:34Variable Value
- 10:00Scope
- 11:41Closure
- 12:50Questions
related talks
29mThe JavaScript Interpreter, Interpreted
17mV8 engine, JS Code Interpretation, and Execution
44mBehind the Scenes of JavaScript: What We Use Without Understanding
29mJavaScript in JavaScript: Inception
45mBehind the Scenes of JavaScript: What We Use Without c…
21mDemystifying Javascript Engines
38mContinuum: A JS (ES6) VM Written in JS (ES3)
38mJavaScript VM internals, EventLoop, Async and ScopeChains
