5 podstawowych typów w TypeScript
TypeScript jest nadzbiorem JavaScriptu, który dodaje statyczną typizację. Poznanie i zrozumienie typów danych występujących w tym języku jest kluczowe dla efektywnego programowania, umożliwiając lepszą kontrolę nad typami oraz wykrywanie błędów już na etapie kompilacji. W tym artykule przeanalizujemy podstawowe typy, takie jak liczby, łańcuchy znaków i wartości logiczne oraz przedstawimy metody deklarowania zmiennych.
Poniżej znajduje się kilka podstawowych typów danych dziedziczonych z JavaScriptu i dostępnych w TypeScript:
number
: Reprezentuje wartości liczbowe, zarówno całkowite, jak i zmiennoprzecinkowe.string
: Reprezentuje sekwencje znaków.boolean
: Reprezentuje wartość logiczną, którą może byćtrue
(prawda) lubfalse
(fałsz).any
: Reprezentuje dowolny typ danych. Przypisanie wartości do typuany
unika sprawdzania typów podczas kompilacji.object
: Reprezentuje złożony obiekt, który może zawierać różne właściwości i metody.
Ponadto TypeScript wprowadza również nowe typy danych, takie jak:
enum
: Reprezentuje zestaw nazwanych wartości.tuple
: Reprezentuje uporządkowaną sekwencję elementów o różnych typach.null
iundefined
: Reprezentują wartości specjalnenull
iundefined
, które oznaczają brak wartości.array
: Reprezentuje tablicę wartości. W TypeScript tablica może być zdefiniowana przy użyciu notacjityp[]
, na przykładnumber[]
lubstring[]
.function
: Reprezentuje funkcję. W TypeScript funkcje mogą mieć określony typ argumentów i typ zwracany.
Masz dosyć czytania? Obejrzyj ten filmik, w którym Wojtek wytłumaczy Ci to wszystko szybko i prosto.
Przypisując wartość nowo zadeklarowanej zmiennej nie musimy podawać jej typu, ponieważ TypeScript sam wywnioskuje typ zmiennej. Natomiast jeśli nie znamy wartości zmiennej w momencie deklaracji, TypeScript użyje typu any
, który do swojej struktury przyjmuje każdy inny typ danych.
let petFavoriteFood
//Po wyświetleniu console.log widzimy:
let petFavoriteFood: any
Należy unikać typu any
ze względu na późniejsze możliwe błędy kompilacji spowodowane brakiem kontroli typów. Użycie typu any
eliminuje jedną z najważniejszych korzyści z korzystania z TypeScriptu, czyli statyczną typizację. Typowanie statyczne pozwala wykryć błędy typów w czasie kompilacji, zanim kod zostanie wykonany. Używanie any
eliminuje tę kontrolę, co może prowadzić do błędów w trakcie działania programu. Ponadto, po użyciu typu any
tracimy możliwość auto-uzupełniania i podpowiedzi. Jedną z zalet TypeScriptu jest inteligentne autouzupełnianie i podpowiedzi dostępne w edytorach kodu.
Chcąc podać typ zmiennej przy jej deklaracji, podajemy nazwę typu po dwukropku.
let petFavoriteFood: string
Chcąc przypisać zmiennej petFavoriteFood wartość innego typu niż string
, TypeScript zwróci nam komunikat:
let petFavoriteFood: string
petFavoriteFood = 5 Type number is not assignable to type string
Jeśli zmienimy typ string
na number
kompilator nie zwróci błędu.
let petFavoriteFood: number
petFavoriteFood = 5
To tylko kilka podstawowych typów danych dostępnych w TypeScript. TypeScript posiada również wiele bardziej zaawansowanych funkcji i typów, które umożliwiają bardziej precyzyjne definiowanie typów danych w kodzie. Pozostałe typy zostaną przedstawione w kolejnych artykułach. Przyjrzenie się dostępnym w TypeScript typom danych i świadome ich wykorzystanie przyczyni się do tworzenia bardziej niezawodnych i skalowalnych aplikacji.