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

    You Don't Know JS. Types & Grammar

    Kyle Simpson

    Editorial
    O'Reilly
    Año
    2015
    Páginas
    ~195
    Nivel
    Intermedio

    De qué trata

    Cuarto título de la serie «You Don't Know JS», en el que Kyle Simpson analiza a fondo el sistema de tipos de JavaScript y las reglas gramaticales del lenguaje, según la especificación ES5 y con referencias a ES6. Va dirigido a desarrolladores que ya escriben JavaScript a diario y quieren entender por qué el lenguaje se comporta como lo hace, sin quedarse en la idea habitual de que la coerción es un defecto que hay que evitar. Conviene haber leído antes «Up & Going» o tener una base sólida del lenguaje.

    El libro tiene cinco capítulos. En «Types» presenta los tipos integrados (null, undefined, boolean, number, string, object y symbol) y la diferencia entre undefined y no declarado. En «Values» trata arrays, strings y números: precisión de punto flotante, Number.EPSILON, NaN, infinitos, el cero negativo y la diferencia entre asignar por valor y por referencia. En «Natives» explica los constructores nativos (String, Number, Object, Array, RegExp, Date, Error, Symbol), el boxing y unboxing de primitivos y la propiedad interna [[Class]]. El capítulo central, «Coercion», detalla las operaciones abstractas ToString, ToNumber, ToBoolean y ToPrimitive, los valores falsy, la coerción explícita e implícita, y las diferencias entre == y === y entre los operadores relacionales. Por último, «Grammar» repasa sentencias y expresiones, la precedencia y asociatividad de operadores, la inserción automática de punto y coma (ASI), los errores tempranos, la TDZ y las particularidades de switch y de try..finally. Un apéndice cubre el JavaScript en entornos mixtos: Annex B, objetos del host, variables globales creadas por los id del DOM, extensión de prototipos nativos y límites de las implementaciones.

    No hay proyectos ni ejercicios guiados: es un libro conceptual que avanza con fragmentos de código cortos para mostrar casos límite. Su gran aporte es que defiende, con argumentos, que la coerción implícita se puede usar con criterio si se conocen sus reglas. Esa postura choca con muchas guías de estilo, así que conviene leerla con mentalidad abierta. Algunos detalles se han quedado atrás, ya que no cubre BigInt ni los cambios posteriores a ES6, pero el núcleo sigue vigente. La edición original se puede leer libremente en el repositorio del autor en GitHub.

    • Tipos primitivos
    • Coerción
    • == vs ===
    • Valores falsy
    • Números y NaN
    • Natives y boxing
    • ToPrimitive
    • Precedencia de operadores
    • ASI
    • Gramática de JavaScript
    • Annex B

    ¿Cómo enseña?

    TeóricoPráctico

    Teórico

    • ✗ Sin ejercicios
    • ✗ Sin proyectos

    Más de JavaScript con nivel Intermedio