Кантроль тыпаў значэнняў аб'екта ў TypeScript
У момант аб'яўлення аб'екта TypeScript запамінае тып дадзеных усіх яго элементаў, а затым кантралюе, каб гэтыя тыпы не змяняліся.
Паглядзім на прыкладзе нашага аб'екта з карыстальнікам. Аб'явім яго:
typescriptlet user = {name: 'john', age: 30};
Пасля аб'яўлення TypeScript прааналізаваў
тып дадзеных кожнага значэння і запамятаў,
што ў полі 'name' - радок, а ў
полі 'age' - лік.
Цяпер спроба запісаць у поле значэнне іншага тыпу скончыцца памылкай.
Прыклад:
typescriptuser.name = 123; // памылка
Прыклад:
typescriptuser.age = 'eee'; // памылка
Прыклад:
typescriptuser.age = '30'; // памылка
Задание 1
Не запускаючы код вызначыце якім будзе вынік выканання кода:
typescriptlet date = {year: 2025, month: 12, day: 31};
date.month = '12';
console.log(date);
Задание 2
Не запускаючы код вызначыце якім будзе вынік выканання кода:
typescriptlet product = {code: '123', name: 'apple', price: 12};
product.code = 123;
console.log(product);
Задание 3
Не запускаючы код вызначыце якім будзе вынік выканання кода:
typescriptlet product = {code: '123', name: 'apple', price: 12 };
product.price = 123;
console.log(product);
Задание 4
Не запускаючы код вызначыце якім будзе вынік выканання кода:
typescriptlet user = {name: 'john', admin: true};
user.admin = 'false';
console.log(user);