Operacje na danych w TypeScript

TypeScript, w przeciwieństwie do innych języków ze ścisłą typizacją, pozwala wykonywać operacje na różnych typach danych, bez konieczności przekształcania ich w jeden wspólny typ.

Spójrzmy na przykładzie, o co chodzi. Załóżmy, że mamy zmienną typu string i number:

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

Spróbujmy dodać te zmienne:

typescriptconsole.log(test1 + test2); // wyświetli '123abc'

Czyli można dodawać, na przykład, stringi i liczby, i nie spowoduje to błędu. TypeScript dba tylko o to, aby programista nie zmienił typu danych zmiennej.

Dla przykładu, w następnym kodzie spróbujemy zapisać string do zmiennej numerycznej i to już spowoduje błąd:

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

test3 = test1 + test2; // próbujemy zapisać string
Задание 1

Bez uruchamiania kodu określ, jaki będzie wynik wykonania kodu:

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

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

Bez uruchamiania kodu określ, jaki będzie wynik wykonania kodu:

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

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

Bez uruchamiania kodu określ, jaki będzie wynik wykonania kodu:

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

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

Bez uruchamiania kodu określ, jaki będzie wynik wykonania kodu:

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

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

Bez uruchamiania kodu określ, jaki będzie wynik wykonania kodu:

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

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

Bez uruchamiania kodu określ, jaki będzie wynik wykonania kodu:

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

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

Bez uruchamiania kodu określ, jaki będzie wynik wykonania kodu:

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

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

Bez uruchamiania kodu określ, jaki będzie wynik wykonania kodu:

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

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

Bez uruchamiania kodu określ, jaki będzie wynik wykonania kodu:

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

console.log(test);