Primitive JavaScript și TypeScript
TypeScript îmbunătățește JavaScript adăugând tipuri statice — tipuri care sunt verificate înainte ca programul să ruleze.
Cele mai simple tipuri din TypeScript se numesc primitive.
Aceste tipuri sunt cărămizile din care se construiesc tipurile mai complexe din aplicațiile tale.
TypeScript include toate primitivele din JavaScript, plus caracteristici de tip proprii.
Iată cele cinci tipuri primitive pe care le vei folosi cel mai des.
Boolean
Un boolean conține o valoare adevărat/fals.
Folosește-l pentru indicatori, comutatoare și condiții.
Exemplu
isActive primește explicit tipul boolean. hasPermission nu are adnotare, așa că TypeScript deduce boolean din valoarea false.
boolean în două moduri.
Declară isActive cu o adnotare explicită boolean având valoarea true, iar hasPermission cu valoarea false fără adnotare, precizând într-un comentariu că TypeScript deduce tipul boolean. Nu se afișează nimic.
Ieșire: program TypeScript și rezultatul capturat
let isActive: boolean = true;
let hasPermission = false; // TypeScript deduce tipul 'boolean'
Number
Un number conține atât numere întregi, cât și numere zecimale.
TypeScript folosește același tip number pentru orice valoare numerică, indiferent de modul în care este scrisă.
Exemplu
Valorile zecimale, hexazecimale, binare, octale și cele în virgulă mobilă au toate tipul number.
number pentru orice formă de literal numeric.
Declară cinci variabile number: decimal (6), hex (0xf00d), binary (0b1010), octal (0o744) și float (3.14), fiecare cu un comentariu care îi numește notația. Nu se afișează nimic.
Ieșire: program TypeScript și rezultatul capturat
let decimal: number = 6;
let hex: number = 0xf00d; // Hexazecimal
let binary: number = 0b1010; // Binar
let octal: number = 0o744; // Octal
let float: number = 3.14; // Virgulă mobilă
String
Un string conține text.
Poți scrie șiruri cu ghilimele simple ('), ghilimele duble (") sau accente grave (`). Accentele grave creează literali de șablon, care pot include valori cu ${...}.
Exemplu
Toate cele trei stiluri de ghilimele produc un string. Literalul de șablon din sentence inserează fullName și rezultatul lui age + 1.
string cu ghilimele duble, ghilimele simple și un literal de șablon.
Declară color ("albastru"), fullName ('John Doe'), o variabilă number numită age (30) și o variabilă string numită sentence construită cu un literal de șablon care inserează fullName și age + 1. Nu se afișează nimic.
Ieșire: program TypeScript și rezultatul capturat
let color: string = "albastru";
let fullName: string = 'John Doe';
let age: number = 30;
let sentence: string = `Salut, mă numesc ${fullName} și voi avea ${age + 1} de ani anul viitor.`;
BigInt (ES2020+)
Un bigint conține numere întregi mai mari decât 2^53 - 1, care este cel mai mare număr întreg pe care un number îl poate reprezenta exact.
Exemplu
BigInt(...) creează o valoare bigint, iar TypeScript deduce acest tip pentru hugeNumber.
bigint pentru numere întregi mai mari decât 2^53 - 1.
Declară o constantă hugeNumber apelând BigInt(9007199254740991) și lasă TypeScript să îi deducă tipul. Nu se afișează nimic.
Ieșire: program TypeScript și rezultatul capturat
const hugeNumber = BigInt(9007199254740991);
Symbol
Un symbol este un identificator unic. Două simboluri nu sunt niciodată egale, chiar dacă au fost create cu aceeași descriere.
Simbolurile sunt utile pentru chei de proprietate unice și pentru constante.
Exemplu
uniqueKey este un symbol folosit drept cheie calculată de proprietate în obj. Citirea lui obj[uniqueKey] afișează textul stocat.
symbol folosit drept cheie unică de obiect.
Creează o constantă uniqueKey de tip symbol din Symbol('descriere'), construiește un obiect obj a cărui cheie calculată este uniqueKey, cu valoarea 'Aceasta este o proprietate unică', apoi afișează obj[uniqueKey].
Ieșire: program TypeScript și rezultatul capturat
const uniqueKey: symbol = Symbol('descriere');
const obj = {
[uniqueKey]: 'Aceasta este o proprietate unică'
};
console.log(obj[uniqueKey]); // "Aceasta este o proprietate unică"