Kontrola tipova vrednosti objekta u TypeScript-u

U trenutku deklaracije objekta, TypeScript pamti tip podataka svih njegovih elemenata, a zatim kontroliše da se ti tipovi ne menjaju.

Pogledajmo na primeru našeg objekta sa korisnikom. Deklarišimo ga:

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

Nakon deklaracije, TypeScript je analizirao tip podataka svake vrednosti i zapamtio da je u polju 'name' - string, a u polju 'age' - broj.

Sada će pokušaj da se u polje upiše vrednost drugog tipa završiti greškom.

Primer:

typescriptuser.name = 123; // greška

Primer:

typescriptuser.age = 'eee'; // greška

Primer:

typescriptuser.age = '30'; // greška
Задание 1

Bez pokretanja koda, odredite kakav će biti rezultat izvršavanja koda:

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

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

Bez pokretanja koda, odredite kakav će biti rezultat izvršavanja koda:

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

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

Bez pokretanja koda, odredite kakav će biti rezultat izvršavanja koda:

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

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

Bez pokretanja koda, odredite kakav će biti rezultat izvršavanja koda:

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

console.log(user);