Respuesta
✅ A. { description: "hello", id:1, title: "test" }
La respuesta de este reto es un poco trampa y vamos a explicar por que.
El código del reto tanto en JavaScript como en TypeScript se ejecuta sin ningún error, peeero en TypeScript nos marca una advertencia: Property 'description' does not exist on type '{ id: number; title: string; }'; ¿pero por que pasa esto?
En TypeScript los objetos literales son como interfaces anónimas, lo que quiere decir que deben cumplir el contrato que las contiene.
En nuestro ejemplo, el objeto obj es del tipo { id: number; title: string; } lo que significa que debe tener un campo id y un campo title si o si, no mas campos ni menos.
Al intentar agregar el campo description el contrato se rompe y esto causa la advertencia que nos arroja TypeScript.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Respuesta
✅ A.
{ description: "hello", id:1, title: "test" }La respuesta de este reto es un poco trampa y vamos a explicar por que.
El código del reto tanto en JavaScript como en TypeScript se ejecuta sin ningún error, peeero en TypeScript nos marca una advertencia:
Property 'description' does not exist on type '{ id: number; title: string; }'; ¿pero por que pasa esto?En TypeScript los objetos literales son como interfaces anónimas, lo que quiere decir que deben cumplir el contrato que las contiene.
En nuestro ejemplo, el objeto
objes del tipo{ id: number; title: string; }lo que significa que debe tener un campoidy un campotitlesi o si, no mas campos ni menos.Al intentar agregar el campo
descriptionel contrato se rompe y esto causa la advertencia que nos arroja TypeScript.