Operații asupra datelor în TypeScript

TypeScript, spre deosebire de alte limbaje cu tipizare strictă, permite efectuarea de operații asupra diferitelor tipuri de date, fără a le converti într-un tip comun.

Să ne uităm la un exemplu pentru a înțelege mai bine. Să presupunem că avem o variabilă de tip string și una numerică:

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

Să efectuăm adunarea acestor variabile:

typescriptconsole.log(test1 + test2); // va afișa '123abc'

Adică se pot aduna, de exemplu, string-uri și numere, iar acest lucru nu va duce la o eroare. Adică TypeScript se asigură doar că programatorul nu schimbă tipul de date al variabilei.

De exemplu, în următorul cod vom încerca să scriem un string într-o variabilă numerică și acest lucru va duce deja la o eroare:

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

test3 = test1 + test2; // încercăm să scriem un string
Задание 1

Fără a rula codul, determinați care va fi rezultatul executării codului:

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

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

Fără a rula codul, determinați care va fi rezultatul executării codului:

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

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

Fără a rula codul, determinați care va fi rezultatul executării codului:

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

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

Fără a rula codul, determinați care va fi rezultatul executării codului:

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

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

Fără a rula codul, determinați care va fi rezultatul executării codului:

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

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

Fără a rula codul, determinați care va fi rezultatul executării codului:

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

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

Fără a rula codul, determinați care va fi rezultatul executării codului:

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

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

Fără a rula codul, determinați care va fi rezultatul executării codului:

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

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

Fără a rula codul, determinați care va fi rezultatul executării codului:

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

console.log(test);