Funkcja dodająca zadanie
Część sekcji Wprowadzenie do Luau ścieżki Lua w Coddy. Lekcja 46 z 73.
Wyzwanie
ŁatwyTwój edytor zawiera już typ Task i tablicę tasks z poprzedniej lekcji.
Utwórz funkcję o nazwie addTask, która przyjmuje dwa parametry:
listtypu{Task}titletypustring
Funkcja powinna:
- utworzyć nowe zadanie
Task, któregoidwynosi#list + 1, któregotitlejest podanym tytułem, a flagadonema wartośćfalse - wstawić je do
listza pomocątable.insert - zwrócić nowe zadanie (typ zwracany
Task)
Następnie wywołaj addTask(tasks, "Review the code"), zapisz wynik w zmiennej o nazwie added i wyświetl, każdy element w osobnym wierszu:
- liczbę zadań znajdujących się teraz w
tasks added.idadded.titleadded.done
Spróbuj swoich sił
-- The shape every task in the manager must follow
type Task = {
id: number,
title: string,
done: boolean,
}
-- The task list: a typed array of Task shapes
local tasks: {Task} = {
{id = 1, title = "Learn Luau types", done = false},
{id = 2, title = "Build a task manager", done = false},
{id = 3, title = "Write tests", done = true},
}
-- Inspect the first task
print(tasks[1].id)
print(tasks[1].title)
print(tasks[1].done)
print(#tasks)
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 niczego nie zwracająceParametry opcjonalneDomyślne wartości parametrówFunkcje wariadyczneDefiniowanie typów funkcjiPodsumowanie: funkcje z typami7Projekt: Menedżer zadań z typami
Projekt: Struktura zadaniaFunkcja dodająca zadanie2Typy podstawowe
Typy podstawowe: num, str, boolTyp „any”: furtka awaryjnaTyp „unknown”Typy Nil i opcjonalneInferencja typów w praktyceJawne adnotacje typówPowtórka: ćwiczenie typów podstawowych5Aliasy, 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
Tablice typowaneDodawanie i odczytywanie elementówCzym jest typ mapy?Deklarowanie map i dostęp do nichIterowanie po tabelachTabele o mieszanej strukturzeWielowymiarowe tablice typowanetable.unpack i varargsPodsumowanie: tablice i mapyPoćwicz samodzielnie: Kompilator Luau online