</> CodeBooks
    ← Volver a JavaScript (página 8)
    Portada de You Don't Know JS. this & Object Prototypes

    You Don't Know JS. this & Object Prototypes

    Kyle Simpson

    Editorial
    O'Reilly
    Año
    2014
    Páginas
    ~173
    Nivel
    Intermedio

    De qué trata

    Segundo libro de la primera edición de You Don't Know JS, publicado por O'Reilly en 2014, en el que Kyle Simpson explica a fondo la palabra clave this y el sistema de prototipos de JavaScript. Está basado en ES5, con un apéndice sobre las clases de ES6, y está dirigido a desarrolladores con experiencia que vienen de lenguajes orientados a objetos o que han usado «clases» en JavaScript sin entender lo que ocurre por debajo.

    Los primeros capítulos desmontan los malentendidos habituales sobre this y presentan las cuatro reglas que determinan su valor según el sitio de llamada: binding por defecto, implícito, explícito (call, apply, bind) y con new, además de su orden de precedencia y el this léxico de las funciones flecha. Después estudia los objetos en detalle: tipos, propiedades y descriptores, inmutabilidad, getters y setters, existencia de propiedades e iteración. Luego compara la teoría de clases con lo que realmente hace JavaScript, analiza los mixins explícitos e implícitos como imitación de clases y explica la cadena de prototipos, [[Prototype]], los «constructores», Object.create y la herencia prototipal. El cierre propone la delegación de comportamiento y el estilo OLOO (objects linked to other objects) como alternativa más simple a la orientación a objetos basada en clases.

    No construye aplicaciones ni trae ejercicios formales; se apoya en ejemplos de código y en comparaciones entre estilos (por ejemplo, el mismo widget o el mismo sistema de login escritos con clases y con OLOO). Es uno de los textos más claros para entender cómo funciona realmente la herencia en JavaScript. Conviene saber que su postura es crítica con class y que esa opinión no es compartida por todos; además es anterior a los campos privados y a otras mejoras de las clases. Se recomienda haber leído antes Scope & Closures.

    • this
    • Reglas de binding
    • call, apply y bind
    • Objetos y descriptores
    • Getters y setters
    • Mixins
    • Cadena de prototipos
    • Object.create
    • Herencia prototipal
    • Delegación de comportamiento
    • OLOO
    • Clases ES6

    ¿Cómo enseña?

    TeóricoPráctico

    Teórico

    • ✗ Sin ejercicios
    • ✗ Sin proyectos

    Más de JavaScript con nivel Intermedio