Przejdź do głównej treści
eLearner.app

Interaktywny kurs

Kurs JavaScript

Ucz się JavaScript od podstaw z interaktywnym silnikiem, który uruchamia Twój kod bezpośrednio w przeglądarce.

01 · Moduł 1 — Podstawy języka

4 lekcji

Fundamenty: deklarowanie zmiennych, rozpoznawanie typów, wykonywanie operacji arytmetycznych i podejmowanie decyzji.

  1. 1.1Zmienne: let i constDeklarowanie wartości, wybór między const a let, zrozumienie podstawowego zakresu.~8 min
  2. 1.2Typy prostestring, number, boolean, null, undefined: podstawowe elementy budulcowe języka.~8 min
  3. 1.3OperatoryOperatory arytmetyczne, porównania, logika booleowska i pierwszeństwo operatorów.~10 min
  4. 1.4Instrukcje warunkowe: if, else, operator trójargumentowyUruchamianie różnego kodu w zależności od wartości wyrażenia.~10 min

02 · Moduł 2 — Łańcuchy znaków i liczby

4 lekcji

Dwa najczęściej używane typy: tworzenie tekstów z szablonami literalnymi, manipulowanie nimi za pomocą metod łańcuchowych, wykonywanie obliczeń z liczbami i obiektem Math.

  1. 2.1Łańcuchy znaków i szablony literalneCudzysłowy, znaki ucieczki, grawisy i interpolacja ${...} do tworzenia tekstu.~8 min
  2. 2.2Metody łańcuchowelength, toUpperCase, includes, slice, split, replace: metody, z których korzystasz każdego dnia.~10 min
  3. 2.3Liczby i MathLiczby całkowite i dziesiętne, zaokrąglanie, Math.min/max/round/floor/ceil, Math.random.~10 min
  4. 2.4Konwersje typówNumber, String, parseInt, parseFloat, toFixed i sytuacje, gdy zaskakuje Cię NaN.~8 min

03 · Moduł 3 — Tablice i obiekty

4 lekcji

Dwie najczęściej używane struktury danych: uporządkowane listy (tablice) oraz mapy klucz-wartość (obiekty).

  1. 3.1Tablice: uporządkowana listaTworzenie tablicy, odczyt/zapis przez indeks, push/pop/shift/unshift, length.~10 min
  2. 3.2Obiekty: mapa klucz-wartośćLiterały, dostęp przez kropkę i nawiasy kwadratowe, dodawanie/usuwanie właściwości.~10 min
  3. 3.3Destrukturyzacja i spreadWyciąganie wielu wartości w jednej linii; kopiowanie i scalanie tablic oraz obiektów za pomocą operatora `...`.~12 min
  4. 3.4Iteracja po kolekcjachPętla for…of na tablicach, for…in na obiektach, Object.keys/values/entries.~10 min

04 · Moduł 4 — Funkcje

4 lekcji

Dzielenie programów na części wielokrotnego użytku: deklarowanie ich, pisanie w zwięzły sposób z użyciem strzałek, przekazywanie elastycznych parametrów i zrozumienie domknięć.

  1. 4.1Deklarowanie funkcjiDeklaracja funkcji (function declaration) vs wyrażenie funkcyjne (function expression), parametry, zwracanie wartości.~10 min
  2. 4.2Funkcje strzałkoweZwięzła składnia `=>`, zwięzłe ciało vs blok, niejawne zwracanie.~10 min
  3. 4.3Parametry domyślne i restWartości domyślne, `...rest` dla zmiennej liczby argumentów, spread w wywołaniu.~12 min
  4. 4.4Domknięcia i zakresFunkcje, które pamiętają swoje otoczenie: liczniki, fabryki, łańcuch zakresów.~12 min

05 · Moduł 5 — Kontrola przepływu

4 lekcji

Powtarzanie, skoki, obsługa błędów: konstrukcje dające Twojemu kodowi możliwość reagowania na dane i problemy.

  1. 5.1Pętle: for i whileKlasyczne for, while, do…while: powtarzanie do momentu spełnienia warunku.~10 min
  2. 5.2for…of oraz for…inIterowanie po wartościach kolekcji vs kluczach obiektu. Kiedy używać którego.~10 min
  3. 5.3break i continueWczesne wyjście z pętli lub przejście do kolejnej iteracji.~10 min
  4. 5.4try / catch / throwZgłaszanie i przechwytywanie błędów, oddzielanie normalnego przepływu od wyjątkowego.~12 min

06 · Moduł 6 — Funkcjonalne metody tablic

4 lekcji

Metody przekształcające tablice: map do zmiany każdego elementu, filter do selekcji, reduce do agregacji, find/some/every do wyszukiwania, sort do porządkowania.

  1. 6.1map i filterTransformowanie każdego elementu (map) i wybieranie podzbioru (filter).~10 min
  2. 6.2reduceAgregowanie tablicy do pojedynczej wartości: sumy, zliczenia, mapy.~12 min
  3. 6.3find, some, everyZnajdowanie pierwszego elementu, sprawdzanie czy przynajmniej jeden lub wszystkie spełniają predykat.~10 min
  4. 6.4sortSortowanie tablicy za pomocą komparatora; stabilne sortowanie, kopiowanie przez toSorted.~12 min

07 · Moduł 7 — Asynchroniczność

4 lekcji

Kod, który czeka: obietnice (Promises), async/await, symulowane wywołania sieciowe (fetch) i asynchroniczna obsługa błędów.

  1. 7.1Obietnice: czym sąStany pending/fulfilled/rejected, .then/.catch, Promise.resolve i reject.~12 min
  2. 7.2async / awaitPisanie kodu asynchronicznego, który czyta się jak kod synchroniczny.~12 min
  3. 7.3fetch (symulowane)Wywoływanie punktu końcowego, odczytywanie JSON, łączenie wyników za pomocą Promise.all.~14 min
  4. 7.4Błędy w kodzie asynchronicznymtry/catch wokół await, .catch na obietnicach, błędy w Promise.all.~12 min

08 · Moduł 8 — Praktyka i kompozycja

4 lekcji

Połącz wszystkie elementy w całość: organizuj kod w moduły, parsuj pliki CSV, waliduj dane wejściowe i planuj zadania za pomocą obietnic.

  1. 8.1Moduły ESM: import / exportDzielenie kodu na pliki i komponowanie bibliotek za pomocą export i import (koncepcja).~12 min
  2. 8.2Wyzwanie: parser CSVPrzekształcanie ciągu znaków CSV w tablicę obiektów przy użyciu split, map i destrukturyzacji.~15 min
  3. 8.3Wyzwanie: walidator danychValidacja obiektów za pomocą reguł komponowalnych i zbieranie wszystkich błędów.~15 min
  4. 8.4Wyzwanie: planowanie z obietnicamiWykonanie zadań szeregowo, równolegle i z limitem współbieżności.~15 min