Dalej•LEKCJA 19 / 26

Typy generyczne

Kurs TypeScript · Wyjaśnienie, przykłady, oczekiwany wynik i ćwiczenie.

Generyki pozwalają pisać funkcje działające z różnymi typami bez utraty informacji.

Jak to działa?

Parametr typu <T> jest określany na podstawie argumentu. Dzięki temu wynik pozostaje właściwego typu, zamiast zamieniać wszystko na any.

Przykład 1 — poznaj zapis

function first<T>(items: T[]): T | undefined {
  return items[0];
}

const value = first([10, 20, 30]);

Typ value to number | undefined, ponieważ tablica może być pusta.

Przeczytaj kod linijka po linijce

  1. function first<T>(items: T[]): T | undefined {Definiujemy funkcję lub metodę, której można użyć później.
  2. return items[0];Zwracamy wyliczoną wartość do miejsca wywołania funkcji.
  3. const value = first([10, 20, 30]);Tworzymy lub aktualizujemy zmienną, pole albo przypisanie.
Oczekiwany wynik / efektpo uruchomieniu przykładu
Brak tekstu w konsoli. Zmienna value ma wartość 10.

Przykład 2 — podobny problem, inne dane

Teraz przyjrzyj się drugiemu przykładowi. Zwróć uwagę na to, co zmieniło się w kodzie, a co w wyniku. Spróbuj przewidzieć rezultat przed przeczytaniem odpowiedzi.

function identity<T>(x: T): T { return x; }
console.log(identity("Hej"));
Wynik drugiego przykładupo uruchomieniu przykładu
Hej
Sprawdź, czy rozumiesz

Wróć do pierwszego przykładu, zmień jedną wartość i spróbuj samodzielnie przewidzieć wynik. Następnie uruchom kod i porównaj rezultat. W ten sposób nauczysz się nie tylko przepisywać instrukcje, ale rozumieć ich działanie.

Spróbuj samodzielnie

Zapisz generyczną funkcję zwracającą ostatni element tablicy.

To już koniec tej lekcji.

Jeśli rozumiesz przykład, oznacz lekcję jako ukończoną i przejdź dalej.