Nadzor tipov vrednosti objekta v TypeScript

V trenutku deklaracije objekta TypeScript zapomni tip podatkov vseh njegovih elementov, nato pa nadzira, da se ti tipi ne spreminjajo.

Poglejmo na primeru našega objekta z uporabnikom. Deklarirajmo ga:

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

Po deklaraciji je TypeScript analiziral tip podatkov vsake vrednosti in si zapomnil, da je v polju 'name' - niz, v polju 'age' pa - število.

Zdaj bo poskus zapisovanja v polje vrednosti drugega tipa končal z napako.

Primer:

typescriptuser.name = 123; // napaka

Primer:

typescriptuser.age = 'eee'; // napaka

Primer:

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

Brez zaganjanja koda določite, kakšen bo rezultat izvajanja koda:

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

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

Brez zaganjanja koda določite, kakšen bo rezultat izvajanja koda:

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

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

Brez zaganjanja koda določite, kakšen bo rezultat izvajanja koda:

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

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

Brez zaganjanja koda določite, kakšen bo rezultat izvajanja koda:

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

console.log(user);