Операции с данни в TypeScript

TypeScript, за разлика от други езици със строга типизация, позволява извършването на операции с различни типове данни, без да ги преобразува в един общ тип.

Нека да разгледаме пример за това какво се има предвид. Нека имаме строкова и числова променливи:

typescriptlet test1: number = 123;
let test2: string = 'abc';

Нека извършим събиране на тези променливи:

typescriptconsole.log(test1 + test2); // ще изведе '123abc'

Тоест може да се събират, например, низове и числа, и това няма да доведе до грешка. Тоест TypeScript следи само за това, програмистът да не промени типа данни на променливата.

За пример в следващия код ще се опитаме да запишем низ в числова променлива и това вече ще доведе до грешка:

typescriptlet test1: number = 123;
let test2: string = 'abc';
let test3: number;

test3 = test1 + test2; // опитваме се да запишем низ
Задание 1

Без да стартирате кода, определете какъв ще бъде резултатът от изпълнението на кода:

typescriptlet test1: number = 123;
let test2: number = 456;

console.log(test1 + test2);
Задание 2

Без да стартирате кода, определете какъв ще бъде резултатът от изпълнението на кода:

typescriptlet test1: string = '123';
let test2: string = '456';

console.log(test1 + test2);
Задание 3

Без да стартирате кода, определете какъв ще бъде резултатът от изпълнението на кода:

typescriptlet test1: string = '123';
let test2: string = '456';

let test3: number = test1 + test2;
console.log(test3);
Задание 4

Без да стартирате кода, определете какъв ще бъде резултатът от изпълнението на кода:

typescriptlet test1: number = 123;
let test2: number = 456;

let test3: string = test1 + test2;
console.log(test3);
Задание 5

Без да стартирате кода, определете какъв ще бъде резултатът от изпълнението на кода:

typescriptlet test1: number = 123;
let test2: number = 456;

let test3: string = test1 + ' ' + test2;
console.log(test3);
Задание 6

Без да стартирате кода, определете какъв ще бъде резултатът от изпълнението на кода:

typescriptlet test1: number = 123;
let test2: number = 456;
let test3: string = '!';

let test4: string = test1 + test2 + test3;
console.log(test4);
Задание 7

Без да стартирате кода, определете какъв ще бъде резултатът от изпълнението на кода:

typescriptlet test1: number = '123';
let test2: number = '456';

console.log(test1 + test2);
Задание 8

Без да стартирате кода, определете какъв ще бъде резултатът от изпълнението на кода:

typescriptlet test1: number = +'123';
let test2: number = +'456';

console.log(test1 + test2);
Задание 9

Без да стартирате кода, определете какъв ще бъде резултатът от изпълнението на кода:

typescriptlet test: string = '1';
test += 1;

console.log(test);