← Volver al blog

Objetos

5 posts con este tag

·5 min de lectura

class, new e instanceof en JavaScript

  • JavaScript
  • Objetos
  • Fundamentos
  • Curso

El post anterior terminó con una promesa: class no inventa un modelo de herencia nuevo, le pone una sintaxis conocida a la cadena de prototipos. Acá está el cumplimiento de esa promesa: qué hace new en cada paso, qué falla distinto si te olvidás de escribirlo antes o después de que exista class, qué compara instanceof en realidad, y por qué una función fábrica sigue siendo una alternativa válida. Todo verificado ejecutando el código.

Leer el post →
·5 min de lectura

Herencia y la cadena de prototipos en JavaScript

  • JavaScript
  • Objetos
  • Fundamentos
  • Curso

En el post de objetos literales quedó una pregunta sin responder: persona.toString() funciona sin que nadie haya escrito ese método. Acá está la respuesta completa: cómo delega un objeto en otro, cómo busca el motor una propiedad subiendo por la cadena, qué recorre for...in que Object.keys no recorre, y qué pasa cuando se modifica un prototipo que ya tiene objetos delegando en él, hasta el caso límite de modificar Object.prototype. Todo verificado ejecutando el código.

Leer el post →
·6 min de lectura

Objetos literales en JavaScript: qué son y cómo cambió su sintaxis

  • JavaScript
  • Objetos
  • ES6
  • Fundamentos

En Java un objeto pide una clase, un constructor y varios pasos antes del new. En JavaScript alcanza con abrir dos llaves. Qué hace que eso siga siendo un objeto de verdad, y el recorrido de su sintaxis desde ES5 hasta hoy.

Leer el post →
·6 min de lectura

Valor y referencia en JavaScript

  • JavaScript
  • Fundamentos
  • Objetos
  • Curso

Los primitivos se comparan y se copian por valor. Los objetos, arrays y funciones se comparan y se copian por referencia. De esa diferencia sale por qué una copia con spread sigue compartiendo lo que tiene adentro, por qué const no protege el contenido de un objeto, y por qué modificar un parámetro adentro de una función a veces se nota afuera y a veces no. Todo verificado ejecutando el código.

Leer el post →
·5 min de lectura

Extends, super y polimorfismo en JavaScript

  • JavaScript
  • Objetos
  • Fundamentos
  • Curso

Object.create dejó pendiente la herencia real, la que reutiliza comportamiento entre varios niveles de la cadena y hace que el mismo método responda distinto según la clase que lo recibe. Acá está esa herencia con class: extends agrega un escalón a la cadena de prototipos sin escribir Object.create a mano, super avanza esa cadena antes de tocar this, y un mismo mensaje enviado a objetos de clases distintas dispara una respuesta distinta en cada uno. Todo verificado ejecutando el código.

Leer el post →