
You Don't Know JS. Scope & Closures
Kyle Simpson
- Editorial
- O'Reilly
- Año
- 2014
- Páginas
- ~98
- Nivel
- Intermedio
De qué trata
Libro breve de la primera edición de You Don't Know JS, publicado por O'Reilly en 2014, que Kyle Simpson dedica por completo a dos de los conceptos más malinterpretados de JavaScript: el ámbito (scope) y los closures. Está basado en ES5, con referencias a lo que traería ES6 (let, const, funciones flecha), y está pensado para quienes ya programan en JavaScript y usan closures sin saberlo, o los usan sin entender del todo cómo funcionan.
El libro explica cómo el motor de JavaScript compila y resuelve los identificadores, con la conversación entre motor, compilador y ámbito y las búsquedas LHS y RHS; el ámbito léxico y cómo eval y with lo alteran (y por qué evitarlos); el ámbito de función frente al de bloque, con IIFE, let, const y catch; y el hoisting de variables y funciones. El capítulo central explica los closures como consecuencia natural del ámbito léxico, con ejemplos de bucles y temporizadores, y los aplica al patrón módulo, tanto el clásico como los módulos de ES6. Los apéndices comparan el ámbito léxico con el dinámico, muestran cómo hacer polyfill del ámbito de bloque y explican el this léxico de las funciones flecha.
No tiene proyectos ni ejercicios formales; avanza con fragmentos de código cortos y razonamientos paso a paso. Su aporte es construir un modelo mental sólido del ámbito, imprescindible para entender después this, los módulos o la programación asíncrona. Conviene saber que es anterior al uso generalizado de let/const y de los módulos ES, por lo que algunos patrones (IIFE, módulo revelador) hoy se ven menos; la segunda edición (2020) actualiza y amplía el tema.
- Ámbito (scope)
- Compilación en JS
- Búsquedas LHS y RHS
- Ámbito léxico
- eval y with
- Ámbito de bloque
- IIFE
- Hoisting
- Closures
- Patrón módulo
- this léxico
¿Cómo enseña?
Teórico
- ✗ Sin ejercicios
- ✗ Sin proyectos

