Control de la estructura del objeto en TypeScript

TypeScript también controla la estructura del objeto. Supongamos que declaramos nuestro objeto de usuario:

typescriptlet user = {name: 'john', age: 30};

En el momento de la declaración TypeScript recuerda que en nuestro objeto hay claves 'name' y 'age', y luego controla que en la variable se almacene un objeto exactamente con estas claves.

El intento de escribir en la variable otro objeto conduce a un error de compilación. Probemos. Escribamos en la variable un objeto en el que falta una clave:

typescriptuser = {name: 'eric'}; // error

Escribamos en la variable un nuevo objeto con las mismas claves, pero también con una clave adicional:

typescriptuser = {name: 'eric', age: 40, salary: 300}; // error

Y ahora escribamos en la variable un objeto que contenga solo las claves 'name' y 'age':

typescriptuser = {name: 'eric', age: 40}; // funciona
Задание 1

Sin ejecutar el código, determine cuál será el resultado de ejecutar el código:

typescriptlet date = {year: 2025, month: 12, day: 31};
date = {year: 2025, month: 12};
Задание 2

Sin ejecutar el código, determine cuál será el resultado de ejecutar el código:

typescriptlet date = {year: 2025, month: 12, day: 31};
date = {year: 2025, month: 12, date: 7};