Operace s daty v TypeScriptu

TypeScript, na rozdíl od jiných jazyků s přísnou typizací, umožňuje provádět operace s různými datovými typy, aniž by byly převedeny na jeden společný typ.

Podívejme se na příklad, co tím máme na mysli. Předpokládejme, že máme řetězcovou a číselnou proměnnou:

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

Zkusme sečíst tyto proměnné:

typescriptconsole.log(test1 + test2); // vypíše '123abc'

To znamená, že lze sčítat například řetězce a čísla, a to nepovede k chybě. To znamená, že TypeScript sleduje pouze to, aby programátor nezměnil datový typ proměnné.

Jako příklad, v následujícím kódu se pokusíme zapsat řetězec do číselné proměnné a to již povede k chybě:

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

test3 = test1 + test2; // pokoušíme se zapsat řetězec
Задание 1

Bez spuštění kodu určete, jaký bude výsledek provedení kódu:

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

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

Bez spuštění kodu určete, jaký bude výsledek provedení kódu:

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

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

Bez spuštění kodu určete, jaký bude výsledek provedení kódu:

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

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

Bez spuštění kodu určete, jaký bude výsledek provedení kódu:

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

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

Bez spuštění kodu určete, jaký bude výsledek provedení kódu:

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

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

Bez spuštění kodu určete, jaký bude výsledek provedení kódu:

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

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

Bez spuštění kodu určete, jaký bude výsledek provedení kódu:

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

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

Bez spuštění kodu určete, jaký bude výsledek provedení kódu:

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

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

Bez spuštění kodu určete, jaký bude výsledek provedení kódu:

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

console.log(test);