O projekcie
Czym to jest
Jedna zagadka typów TypeScript dziennie, taka sama dla wszystkich, zmieniana o północy UTC. Uzupełnij lukę, aż przejdą wszystkie testy. Kompilator TypeScript sprawdza kod w Twojej przeglądarce, bez wykonywania go.
Rozwiązanie z objaśnieniami pojawia się, gdy zagadka przestaje być zagadką dnia. Starsze zagadki pozostają dostępne w archiwum. W sekcji Ćwicz możesz filtrować je według zagadnienia i trudności.
Jak działa par
Par to docelowa liczba podejść. Każde uruchomienie testów kosztuje jedno podejście, a odsłonięcie podpowiedzi — kolejne. Rozwiąż zagadkę w mniejszej liczbie podejść niż par, by uzyskać wynik poniżej par. Nie ma limitu czasu.
Dlaczego na poziomie typów
Testy porównują Twój wynik z oczekiwanym typem za pomocą poniższego narzędzia do sprawdzania równości. Sama przypisywalność nie wystarcza: przecięcie typów obiektowych może być przypisywalne do spłaszczonego obiektu, choć to narzędzie uzna je za różne.
type Expect<T extends true> = T type Equal<X, Y> = (<T>() => T extends X ? 1 : 2) extends (<T>() => T extends Y ? 1 : 2) ? true : false
Ucz się dalej
Przerabiaj lekcje, eksperymentuj w laboratorium lub sprawdź typ pomocniczy, błąd kompilatora czy wzorzec do wykorzystania w kodzie. Zagadki i postęp lekcji działają bez konta i są zapisywane na tym urządzeniu.

