Controlul tipurilor de valori ale obiectelor în TypeScript

În momentul declarării unui obiect, TypeScript memorează tipul de date al tuturor elementelor sale, și apoi controlează ca aceste tipuri să nu fie modificate.

Să ne uităm la exemplul obiectului nostru cu utilizator. Să-l declarăm:

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

După declarare, TypeScript a analizat tipul de date al fiecărei valori și a memorat că în câmpul 'name' este un șir de caractere, iar în câmpul 'age' este un număr.

Acum, o încercare de a scrie în câmp o valoare de alt tip se va termina cu o eroare.

Exemplu:

typescriptuser.name = 123; // eroare

Exemplu:

typescriptuser.age = 'eee'; // eroare

Exemplu:

typescriptuser.age = '30'; // eroare
Задание 1

Fără a rula codul, determinați care va fi rezultatul executării codului:

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

console.log(date);
Задание 2

Fără a rula codul, determinați care va fi rezultatul executării codului:

typescriptlet product = {code: '123', name: 'apple', price: 12};
product.code = 123;

console.log(product);
Задание 3

Fără a rula codul, determinați care va fi rezultatul executării codului:

typescriptlet product = {code: '123', name: 'apple', price: 12 };
product.price = 123;

console.log(product);
Задание 4

Fără a rula codul, determinați care va fi rezultatul executării codului:

typescriptlet user = {name: 'john', admin: true};
user.admin = 'false';

console.log(user);