Kontrola typov hodnôt objektu v TypeScript

V momente deklarácie objektu TypeScript zapamätá typ dát všetkých jeho elementov, a potom kontroluje, aby sa tieto typy nemenili.

Pozrime sa na príklad nášho objektu s užívateľom. Deklarujme ho:

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

Po deklarácii TypeScript analyzoval typ dát každej hodnoty a zapamätal si, že v poli 'name' - reťazec, a v poli 'age' - číslo.

Teraz pokus zapísať do poľa hodnotu iného typu skončí chybou.

Príklad:

typescriptuser.name = 123; // chyba

Príklad:

typescriptuser.age = 'eee'; // chyba

Príklad:

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

Bez spustenia kódu určte, aký bude výsledok vykonania kódu:

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

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

Bez spustenia kódu určte, aký bude výsledok vykonania kódu:

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

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

Bez spustenia kódu určte, aký bude výsledok vykonania kódu:

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

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

Bez spustenia kódu určte, aký bude výsledok vykonania kódu:

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

console.log(user);