Операције над подацима у TypeScript-у

TypeScript, за разлику од других језика са строгом типизaцијом, дозвољава извршавање операција над различитим типовима података, без претварања у један заједнички тип.

Хајде да погледамо на примеру, шта се мисли. Претпоставимо да имамо стринг и нумеричку променљиву:

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

Хајде да извршимо сабирање ових променљивих:

typescriptconsole.log(test1 + test2); // исписаће '123abc'

То значи да можемо да сабирамо, на пример, стрингове и бројеве, и то неће довести до грешке. То значи да TypeScript прати само да програмeр не промени тип података променљиве.

За пример, у следећем коду ћемо покушати да упишемо стринг у нумеричку променљиву и то ће већ довести до грешке:

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);