Podsumowanie: funkcje generyczne
Część sekcji Wprowadzenie do Luau ścieżki Lua w Coddy. Lekcja 66 z 80.
Wyzwanie
ŚredniSpakuj dwie wartości różnych typów w jedną parę.
- Napisz
type Pair<T, U> = {first: T, second: U}. - Napisz
local function makePair<T, U>(first: T, second: U): Pair<T, U>, która zwraca{first = first, second = second}. - Zapisz wynik
makePair("Nova", 87)wlocal playerScore: Pair<string, number>i wypisz`({playerScore.first}, {playerScore.second})`.
Naciśnij Uruchom kod: wynik to (Nova, 87).
Spróbuj swoich sił
-- 1) type Pair<T, U> = {first: T, second: U}
-- 2) makePair<T, U>(first: T, second: U): Pair<T, U>
-- 3) utwórz playerScore za pomocą makePair("Nova", 87), a następnie go wypisz
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Wprowadzenie do Luau
1Pierwsze kroki z Luau
Czym jest Luau?Dlaczego warto używać Luau?Twój pierwszy kod w LuauSprawdzanie typów i tryby błędówPodsumowanie: Wprowadzenie do Luau4Praca z funkcjami
Typowanie parametrów i wartości zwracanychTypowanie funkcji anonimowychFunkcje niezwracające wartościParametry opcjonalneDomyślne wartości parametrówWartości domyślne dla typów BooleanFunkcje wariadyczneDefiniowanie typów funkcjiPodsumowanie: funkcje z typami2Podstawowe typy
Number, String i BooleanTyp 'any': wyjście awaryjneTyp 'unknown'Nil i typy opcjonalneInferencja typów w praktyceJawne adnotacje typówPowtórka: ćwiczenia z podstawowych typów5Aliasy, typy sumy i przekroju
Aliasy typów dla typów prostychTypy sumyPraca z typami sumyTypy literałoweTypy przekrojuŁączenie aliasów typówPodsumowanie: zaawansowane kombinacje typów3Typowane tabele: tablice i mapy
Typowane tabliceDodawanie i odczytywanie elementówCzym jest typ mapy?Deklarowanie i uzyskiwanie dostępu do mapIterowanie po tabelachTabele o mieszanej strukturzeOdczytywanie siatkiTworzenie siatkitable.unpackPodsumowanie: tablice i mapy6Typowanie kształtów tabel
Adnotacje kształtów w miejscuAliasy typów dla kształtówWłaściwości opcjonalneKształty a luźne tabeleRozszerzanie kształtówDodawanie metod do kształtówSelf i metody z dwukropkiemPodsumowanie: definiowanie kształtów tabel9Typy generyczne: pierwsze spojrzenie
Problem, który rozwiązują typy generyczneGeneryczna funkcja identycznościowaKorzystanie z funkcji generycznejTablice generyczneGeneryczne aliasy typówPodsumowanie: funkcje generycznePoćwicz samodzielnie: Kompilator Luau online