Dokumentacja JavaScript
Składnia języka, klasy, metody tablic, napisów i obiektów, obietnice, DOM i API przeglądarki. Każdy przykład uruchomisz jednym kliknięciem, a po edycji zobaczysz nowy wynik w konsoli.
199 haseł
Składnia i instrukcje
Zmienne, warunki, pętle, funkcje, klasy i operatory.
- letDeklaruje zmienną o zasięgu blokowym, której wartość można później zmienić.
- constDeklaruje stałą o zasięgu blokowym. Takiej zmiennej nie można ponownie przypisać wartości.
- varDeklaruje zmienną o zasięgu funkcji. To starszy sposób, dziś zastąpiony przez let i const.
- functionDeklaruje nazwaną funkcję: blok kodu z parametrami, który można wywoływać wiele razy i który może zwrócić wynik.
- () => {}Funkcja strzałkowa (arrow function): krótszy zapis funkcji, bez własnego this, z niejawnym return dla jednego wyrażenia.
- Parametry domyślneWartości, które parametr funkcji dostaje, gdy argument nie zostanie podany albo ma wartość undefined.
- Parametr resztowy (...rest)Zbiera wszystkie pozostałe argumenty funkcji do prawdziwej tablicy. Zapisujesz go jako ...nazwa na końcu listy.
- function*Deklaruje generator: funkcję, która oddaje kolejne wartości przez yield i wstrzymuje się między nimi.
- Iteratory (Symbol.iterator)Protokół iteracji: obiekt z metodą [Symbol.iterator]() działa z for...of, spreadem i destrukturyzacją.
- if...elseWykonuje blok kodu tylko wtedy, gdy warunek jest prawdziwy, a w przeciwnym razie opcjonalny blok else.
- switchPorównuje wartość z listą przypadków case i wykonuje kod od pierwszego pasującego.
- forPętla z licznikiem: inicjalizacja, warunek i krok. Powtarza blok kodu, dopóki warunek jest prawdziwy.
- for...ofPrzechodzi po kolejnych wartościach obiektu iterowalnego: tablicy, napisu, Map, Set i innych.
- for...inPrzechodzi po nazwach wyliczalnych właściwości obiektu, także tych odziedziczonych z prototypu.
- whilePowtarza blok kodu, dopóki warunek jest prawdziwy. Warunek sprawdza przed każdym obrotem.
- do...whileWykonuje blok kodu co najmniej raz, a potem powtarza go, dopóki warunek jest prawdziwy.
- breakNatychmiast kończy pętlę lub instrukcję switch i przechodzi do kodu, który jest za nią.
- continuePomija resztę bieżącego obrotu pętli i przechodzi od razu do następnego.
- returnKończy działanie funkcji i przekazuje wartość do miejsca, w którym funkcję wywołano.
- try...catchPrzechwytuje błędy rzucone w bloku try i obsługuje je w catch. Opcjonalny finally wykona się zawsze.
- throwRzuca wyjątek: przerywa bieżący kod i przekazuje błąd do najbliższego bloku catch.
- ErrorWbudowany obiekt błędu z komunikatem i śladem stosu. Podstawa wyjątków i własnych klas błędów.
- classDefiniuje klasę, czyli szablon do tworzenia obiektów z tymi samymi polami i metodami.
- importWczytuje wartości wyeksportowane z innego modułu ES: funkcje, klasy, stałe albo cały moduł.
- exportUdostępnia funkcje, klasy i wartości z modułu, aby inne pliki mogły je zaimportować.
- typeofZwraca napis z nazwą typu wartości, np. "number", "string" albo "object".
- ? :Operator warunkowy (ternary) zwraca jedną z dwóch wartości zależnie od warunku, w jednym krótkim wyrażeniu.
- Spread (...)Składnia spread rozkłada tablicę, napis lub obiekt na pojedyncze elementy: do kopiowania, łączenia i przekazywania argumentów.
- DestrukturyzacjaDestrukturyzacja (destructuring) wyciąga wartości z tablic i obiektów prosto do osobnych zmiennych.
- ?.Operator ?. (optional chaining) bezpiecznie odczytuje właściwość. Gdy obiekt to null lub undefined, zwraca undefined zamiast błędu.
- ??Operator ?? (nullish coalescing) zwraca prawą stronę tylko wtedy, gdy lewa to null lub undefined. Idealny do wartości domyślnych.
- Template literalsSzablony tekstowe w odwróconych apostrofach: wstawiają wartości przez ${} i mogą zajmować wiele linii.
- ===Operator ścisłej równości porównuje wartości bez konwersji typów: true daje tylko ten sam typ i ta sama wartość.
- &&, ||, !Operatory logiczne I (&&), LUB (||) i NIE (!). Łączą warunki, a && i || zwracają jedną ze swoich stron.
Tablice
Metody obiektu Array: przekształcanie, filtrowanie, wyszukiwanie i sortowanie.
- Array.prototype.map()Tworzy nową tablicę z wynikami wywołania funkcji dla każdego elementu.
- Array.prototype.filter()Tworzy nową tablicę z elementami, dla których funkcja zwróciła true.
- Array.prototype.reduce()Sprowadza całą tablicę do jednej wartości, np. sumy, obiektu lub nowej tablicy.
- Array.prototype.forEach()Wywołuje funkcję dla każdego elementu tablicy.
- Array.prototype.find()Zwraca pierwszy element spełniający warunek albo undefined.
- Array.prototype.findIndex()Zwraca indeks pierwszego elementu spełniającego warunek albo -1.
- Array.prototype.findLast()Zwraca ostatni element spełniający warunek, przeszukując tablicę od końca.
- Array.prototype.findLastIndex()Zwraca indeks ostatniego elementu spełniającego warunek, szukając od końca, albo -1.
- Array.prototype.some()Sprawdza, czy przynajmniej jeden element spełnia warunek.
- Array.prototype.every()Sprawdza, czy wszystkie elementy spełniają warunek.
- Array.prototype.includes()Sprawdza, czy tablica zawiera podaną wartość.
- Array.prototype.indexOf()Zwraca indeks pierwszego wystąpienia wartości albo -1.
- Array.prototype.lastIndexOf()Zwraca indeks ostatniego wystąpienia wartości w tablicy albo -1, gdy jej nie ma.
- Array.prototype.push()Dodaje elementy na koniec tablicy i zwraca jej nową długość.
- Array.prototype.pop()Usuwa ostatni element tablicy i go zwraca.
- Array.prototype.shift()Usuwa pierwszy element tablicy i go zwraca.
- Array.prototype.unshift()Dodaje elementy na początek tablicy i zwraca jej nową długość.
- Array.prototype.slice()Zwraca kopię fragmentu tablicy bez zmieniania oryginału.
- Array.prototype.splice()Usuwa, zastępuje lub wstawia elementy w miejscu, zmieniając tablicę.
- Array.prototype.toSpliced()Usuwa, wstawia lub zastępuje elementy w kopii tablicy. Oryginał zostaje bez zmian.
- Array.prototype.sort()Sortuje elementy tablicy w miejscu i zwraca tę samą tablicę.
- Array.prototype.toSorted()Zwraca posortowaną kopię tablicy, nie zmieniając oryginału.
- Array.prototype.reverse()Odwraca kolejność elementów tablicy w miejscu.
- Array.prototype.toReversed()Zwraca nową tablicę z elementami w odwrotnej kolejności, bez zmiany oryginału.
- Array.prototype.concat()Łączy tablice i wartości w nową tablicę.
- Array.prototype.join()Łączy elementy tablicy w jeden napis z wybranym separatorem.
- Array.prototype.flat()Spłaszcza zagnieżdżone tablice do podanej głębokości.
- Array.prototype.flatMap()Mapuje każdy element i spłaszcza wynik o jeden poziom.
- Array.prototype.at()Zwraca element o podanym indeksie, także liczonym od końca.
- Array.prototype.with()Zwraca kopię tablicy, w której element o podanym indeksie ma nową wartość.
- Array.from()Tworzy tablicę z obiektu iterowalnego lub „tablicopodobnego”.
- Array.of()Tworzy nową tablicę z podanych argumentów, niezależnie od ich liczby i typu.
- Array.isArray()Sprawdza, czy wartość jest tablicą.
- Array.prototype.fill()Wypełnia tablicę (lub jej fragment) jedną wartością.
- Array.prototype.lengthLiczba elementów w tablicy, którą można też zmieniać.
Napisy
Metody obiektu String: wycinanie, zamiana, dzielenie i formatowanie tekstu.
- String.prototype.lengthDługość napisu, czyli liczba jednostek kodu UTF-16. Właściwość jest tylko do odczytu.
- String.prototype.slice()Zwraca fragment napisu od indeksu początkowego do końcowego (bez niego). Obsługuje indeksy ujemne.
- String.prototype.substring()Zwraca fragment napisu między dwoma indeksami. Ujemne wartości zamienia na 0, a odwrócone indeksy zamienia miejscami.
- String.prototype.split()Dzieli napis na tablicę fragmentów według separatora: znaku, tekstu lub wyrażenia regularnego.
- String.prototype.replace()Zwraca nowy napis, w którym pierwsze dopasowanie wzorca (albo wszystkie, przy fladze g) zamieniono na inny tekst.
- String.prototype.replaceAll()Zwraca nowy napis, w którym wszystkie wystąpienia wzorca zamieniono na podany tekst lub wynik funkcji.
- String.prototype.toUpperCase()Zwraca kopię napisu zamienioną na wielkie litery. Poprawnie obsługuje polskie znaki.
- String.prototype.toLowerCase()Zwraca kopię napisu zamienioną na małe litery. Przydaje się do porównań i porządkowania danych.
- String.prototype.trim()Usuwa białe znaki z obu końców napisu: spacje, tabulatory i znaki nowej linii.
- String.prototype.trimStart()Usuwa białe znaki tylko z początku napisu. Koniec tekstu zostaje bez zmian.
- String.prototype.trimEnd()Usuwa białe znaki tylko z końca napisu, w tym końcowe znaki nowej linii.
- String.prototype.includes()Sprawdza, czy napis zawiera podany fragment tekstu. Zwraca true albo false i rozróżnia wielkość liter.
- String.prototype.startsWith()Sprawdza, czy napis zaczyna się od podanego tekstu. Zwraca true albo false.
- String.prototype.endsWith()Sprawdza, czy napis kończy się podanym tekstem. Zwraca true albo false.
- String.prototype.indexOf()Zwraca indeks pierwszego wystąpienia podanego tekstu w napisie albo -1, gdy go nie ma.
- String.prototype.lastIndexOf()Zwraca indeks ostatniego wystąpienia podanego tekstu w napisie albo -1, gdy go nie ma.
- String.prototype.padStart()Dopełnia napis z lewej strony podanym tekstem, aż osiągnie wskazaną długość. Idealne do zer wiodących.
- String.prototype.padEnd()Dopełnia napis z prawej strony podanym tekstem, aż osiągnie wskazaną długość.
- String.prototype.repeat()Zwraca nowy napis złożony z podanej liczby powtórzeń oryginału.
- String.prototype.at()Zwraca znak spod podanego indeksu. Ujemne indeksy liczą się od końca, więc at(-1) to ostatni znak.
- String.prototype.charAt()Zwraca znak spod podanego indeksu. Poza zakresem zwraca pusty napis zamiast undefined.
- String.prototype.match()Dopasowuje napis do wyrażenia regularnego. Zwraca tablicę z dopasowaniem lub wszystkimi dopasowaniami albo null.
- String.prototype.matchAll()Zwraca iterator wszystkich dopasowań wyrażenia regularnego, każde razem z grupami i pozycją w tekście.
- String.prototype.search()Zwraca indeks pierwszego dopasowania wyrażenia regularnego w napisie albo -1.
- String.prototype.localeCompare()Porównuje dwa napisy według reguł języka. Zwraca liczbę ujemną, zero lub dodatnią, idealną do sortowania.
Obiekty i klasy
Metody obiektu Object, klasy, dziedziczenie, gettery i prototypy.
- Object.keys()Zwraca tablicę nazw własnych, wyliczalnych właściwości obiektu.
- Object.values()Zwraca tablicę wartości własnych, wyliczalnych właściwości obiektu.
- Object.entries()Zwraca tablicę par [klucz, wartość] obiektu.
- Object.assign()Kopiuje właściwości z jednego lub więcej obiektów do obiektu docelowego.
- Object.freeze()Zamraża obiekt, blokując dodawanie, usuwanie i zmianę jego właściwości.
- Object.fromEntries()Tworzy obiekt z listy par [klucz, wartość].
- Object.hasOwn()Sprawdza, czy obiekt ma własną właściwość o podanej nazwie.
- Object.is()Sprawdza, czy dwie wartości są takie same. Od === różni się tylko dla NaN oraz dla 0 i -0.
- Object.groupBy()Grupuje elementy według klucza zwróconego przez funkcję.
- Object.create()Tworzy nowy obiekt z podanym prototypem.
- thisSłowo kluczowe wskazujące obiekt, w kontekście którego wywołano funkcję.
- get / setWłaściwości obliczane przy odczycie (get) i obsługiwane przy zapisie (set).
- extendsTworzy klasę pochodną, która dziedziczy metody innej klasy i może je rozszerzać lub nadpisywać.
- superOdwołuje się do klasy bazowej: wywołuje jej konstruktor albo jej wersję metody.
- staticOznacza pole lub metodę należącą do samej klasy, a nie do obiektów tworzonych przez new.
- #polePola i metody z prefiksem # są prywatne: dostęp do nich ma wyłącznie kod wewnątrz klasy.
- instanceofSprawdza, czy obiekt został utworzony przez daną klasę albo przez klasę, która po niej dziedziczy.
Liczby i Math
Konwersje, zaokrąglanie, losowanie i funkcje matematyczne.
- Number.parseInt()Zamienia początek napisu na liczbę całkowitą w wybranym systemie liczbowym.
- Number.parseFloat()Zamienia początek napisu na liczbę zmiennoprzecinkową.
- Number.prototype.toFixed()Zamienia liczbę na napis z podaną liczbą miejsc po przecinku.
- Number.prototype.toString()Zamienia liczbę na napis, także w innym systemie liczbowym, np. dwójkowym lub szesnastkowym.
- Number.prototype.toLocaleString()Formatuje liczbę według zwyczajów wybranego języka: separatory tysięcy, przecinek, waluty i procenty.
- Number.isNaN()Sprawdza, czy wartość jest dokładnie NaN.
- Number.isInteger()Sprawdza, czy wartość jest liczbą całkowitą.
- Number.isFinite()Sprawdza, czy wartość jest zwykłą, skończoną liczbą, a nie NaN ani nieskończonością.
- BigIntTyp do dokładnych obliczeń na dowolnie dużych liczbach całkowitych. Literały kończą się literą n.
- Math.round()Zaokrągla liczbę do najbliższej liczby całkowitej.
- Math.floor()Zaokrągla liczbę w dół, do najbliższej mniejszej liczby całkowitej.
- Math.ceil()Zaokrągla liczbę w górę, do najbliższej większej liczby całkowitej.
- Math.random()Zwraca losową liczbę z przedziału od 0 (włącznie) do 1 (bez 1).
- Math.max()Zwraca największą z podanych liczb.
- Math.min()Zwraca najmniejszą z podanych liczb.
- Math.abs()Zwraca wartość bezwzględną liczby, czyli jej odległość od zera.
- Math.pow()Podnosi liczbę do potęgi.
- Math.sqrt()Zwraca pierwiastek kwadratowy liczby.
- Math.trunc()Odcina część ułamkową liczby, zostawiając część całkowitą.
Asynchroniczność
Obietnice, async/await, timery i zapytania fetch.
- PromiseObiekt reprezentujący wynik operacji, który pojawi się w przyszłości: wartość przy sukcesie albo błąd.
- Promise.prototype.then()Rejestruje funkcję wywoływaną po spełnieniu obietnicy i zwraca nową obietnicę, co pozwala łączyć kroki w łańcuch.
- Promise.prototype.catch()Rejestruje funkcję obsługi błędu, wywoływaną, gdy obietnica zostanie odrzucona.
- Promise.prototype.finally()Rejestruje funkcję wywoływaną po rozstrzygnięciu obietnicy, bez względu na to, czy skończyła się sukcesem, czy błędem.
- Promise.all()Czeka na spełnienie wszystkich obietnic i zwraca tablicę ich wyników. Odrzuca się przy pierwszym błędzie.
- Promise.allSettled()Czeka na rozstrzygnięcie wszystkich obietnic i zwraca opis każdego wyniku, zarówno sukcesów, jak i błędów.
- Promise.race()Zwraca obietnicę, która rozstrzyga się tak samo jak pierwsza rozstrzygnięta obietnica z listy: sukcesem albo błędem.
- Promise.any()Zwraca wynik pierwszej spełnionej obietnicy. Odrzuca się dopiero wtedy, gdy zawiodą wszystkie.
- async functionDeklaruje funkcję asynchroniczną, która zawsze zwraca obietnicę i może używać w środku słowa await.
- awaitWstrzymuje funkcję async do czasu rozstrzygnięcia obietnicy i zwraca jej wartość albo rzuca jej błąd.
- setTimeout()Uruchamia funkcję jeden raz, po upływie podanej liczby milisekund.
- setInterval()Wywołuje funkcję cyklicznie, co podany odstęp czasu, aż do zatrzymania przez clearInterval().
- fetch()Wysyła zapytanie HTTP i zwraca obietnicę z odpowiedzią serwera (obiektem Response).
Obiekty wbudowane
Map, Set, JSON, Date, Intl, RegExp i inne obiekty wbudowane w język.
- MapKolekcja par klucz i wartość, w której kluczem może być dowolna wartość, a kolejność dodawania jest zachowana.
- SetKolekcja unikalnych wartości: każda wartość może wystąpić w zbiorze tylko raz.
- WeakMapMapa z obiektami jako kluczami, która nie zatrzymuje ich w pamięci: wpis znika razem z nieużywanym obiektem.
- WeakSetZbiór obiektów, który nie zatrzymuje ich w pamięci. Służy do oznaczania obiektów, np. już obsłużonych.
- JSON.stringify()Zamienia wartość JavaScript, np. obiekt lub tablicę, na napis w formacie JSON.
- JSON.parse()Zamienia napis w formacie JSON na wartość JavaScript, np. obiekt lub tablicę.
- structuredClone()Tworzy głęboką kopię wartości, łącznie z zagnieżdżonymi obiektami, datami, Map i Set.
- DateObiekt reprezentujący konkretny moment w czasie, z metodami do odczytu i zmiany daty oraz godziny.
- Intl.NumberFormatFormatuje liczby zgodnie z zasadami danego języka: separatory, waluty, procenty i jednostki.
- Intl.DateTimeFormatFormatuje daty i godziny zgodnie z zasadami wybranego języka i strefy czasowej.
- Intl.RelativeTimeFormatFormatuje czas względny w wybranym języku, np. „za 3 dni”, „2 godziny temu” albo „wczoraj”.
- Intl.PluralRulesWybiera właściwą odmianę słowa po liczebniku w danym języku. Po polsku: 1 punkt, 2 punkty, 5 punktów.
- RegExpWyrażenie regularne, czyli wzorzec do wyszukiwania, sprawdzania i zamiany fragmentów tekstu.
- SymbolTyp prymitywny do tworzenia unikalnych identyfikatorów, np. kluczy właściwości, które nie kolidują z innymi.
DOM i zdarzenia
Wyszukiwanie i tworzenie elementów, zdarzenia, klasy, atrybuty i treść.
- document.querySelector()Zwraca pierwszy element pasujący do selektora CSS albo null, gdy nic nie pasuje.
- document.querySelectorAll()Zwraca statyczną listę (NodeList) wszystkich elementów pasujących do selektora CSS.
- document.getElementById()Zwraca element o podanym identyfikatorze (atrybucie id) albo null, gdy go nie ma.
- EventTarget.addEventListener()Rejestruje funkcję wywoływaną za każdym razem, gdy na elemencie wystąpi zdarzenie, np. kliknięcie.
- Element.classListObiekt do dodawania, usuwania, przełączania i sprawdzania klas CSS elementu.
- Node.textContentOdczytuje lub ustawia cały tekst elementu, bez znaczników HTML.
- Element.innerHTMLOdczytuje lub zastępuje zawartość elementu w postaci kodu HTML.
- document.createElement()Tworzy nowy element HTML o podanej nazwie znacznika, gotowy do wstawienia na stronę.
- Element.append()Dodaje elementy lub tekst na końcu zawartości elementu.
- Element.remove()Usuwa element z dokumentu razem z całą jego zawartością.
- Element.setAttribute()Ustawia wartość atrybutu HTML elementu albo dodaje nowy atrybut.
- HTMLElement.datasetObiekt z wartościami atrybutów data-* elementu, do odczytu i zapisu własnych danych.
- HTMLElement.styleObiekt stylów wpisanych bezpośrednio w element (inline), do odczytu i zmiany pojedynczych właściwości CSS.
- Event.preventDefault()Blokuje domyślne działanie przeglądarki dla zdarzenia, np. wysłanie formularza lub przejście pod adres linku.
- Event.targetElement, na którym faktycznie wystąpiło zdarzenie, np. kliknięty przycisk wewnątrz listy.
- Element.closest()Zwraca najbliższego przodka (lub sam element) pasującego do selektora CSS albo null.
- Element.insertAdjacentHTML()Parsuje napis jako HTML i wstawia powstałe elementy w wybranym miejscu względem elementu.
- EventTarget.removeEventListener()Odpina funkcję obsługi zdarzenia dodaną wcześniej przez addEventListener(). Wymaga tej samej funkcji i tego samego typu zdarzenia.
- Element.getBoundingClientRect()Zwraca rozmiar elementu i jego położenie względem widocznego obszaru okna w postaci obiektu DOMRect.
- Element.scrollIntoView()Przewija stronę i przewijane kontenery tak, żeby element pojawił się na ekranie, skokiem albo płynnie.
- Element.childrenŻywa kolekcja bezpośrednich dzieci elementu. Razem z parentElement i nextElementSibling służy do poruszania się po drzewie DOM.
- Node.cloneNode()Tworzy kopię węzła. Z argumentem true kopiuje też całą zawartość, czyli wszystkie elementy i teksty w środku.
- Element.replaceWith()Zastępuje element w dokumencie innymi elementami lub tekstem. Stary element zostaje usunięty ze strony.
- Element.toggleAttribute()Dodaje atrybut, gdy go nie ma, albo usuwa, gdy jest. Najlepiej sprawdza się przy atrybutach logicznych, takich jak hidden czy disabled.
- HTMLElement.focus()Ustawia fokus na elemencie, np. polu formularza, żeby od razu odbierał klawiaturę. Metoda blur() zdejmuje fokus.
- EventTarget.dispatchEvent()Wywołuje zdarzenie na elemencie z poziomu kodu. Razem z CustomEvent pozwala tworzyć własne zdarzenia z dodatkowymi danymi.
- getComputedStyle()Zwraca obliczone style elementu, czyli wartości CSS, które przeglądarka faktycznie zastosowała po uwzględnieniu wszystkich reguł.
API przeglądarki
Pamięć przeglądarki, adresy URL, historia, schowek, obserwatory i animacje klatek.
- localStoragePamięć przeglądarki na pary klucz i wartość, która przetrwa odświeżenie strony i ponowne uruchomienie przeglądarki.
- sessionStoragePamięć przeglądarki na pary klucz i wartość, która działa tylko w bieżącej karcie i znika po jej zamknięciu.
- URLObiekt do tworzenia, odczytywania i zmieniania adresów URL. Rozkłada adres na części: protokół, host, ścieżkę i parametry.
- URLSearchParamsObiekt do odczytu i budowania parametrów zapytania w adresie, czyli części po znaku ?, np. ?kurs=js&strona=2.
- history.pushState()Dodaje nowy wpis do historii przeglądarki i zmienia adres w pasku bez przeładowania strony.
- locationObiekt z informacjami o adresie bieżącej strony. Pozwala odczytać jego części i przejść pod inny adres.
- navigator.clipboardAsynchroniczny dostęp do schowka systemowego. Metoda writeText() kopiuje tekst, a readText() odczytuje go ze schowka.
- IntersectionObserverObserwuje, czy element jest widoczny w oknie albo w przewijanym kontenerze, i wywołuje funkcję, gdy to się zmienia.
- ResizeObserverWywołuje funkcję za każdym razem, gdy zmieni się rozmiar obserwowanego elementu, bez względu na przyczynę zmiany.
- MutationObserverObserwuje zmiany w drzewie DOM: dodane i usunięte elementy, zmiany atrybutów i tekstu, i zgłasza je w jednej funkcji.
- requestAnimationFrame()Planuje wywołanie funkcji tuż przed kolejnym odświeżeniem ekranu. Służy do płynnych animacji sterowanych JavaScriptem.
- matchMedia()Sprawdza w JavaScripcie, czy strona spełnia zapytanie medialne CSS, np. (max-width: 600px), i pozwala reagować na jego zmiany.
- FormDataZbiera wartości pól formularza w pary nazwa i wartość. Gotowy obiekt można odczytać albo wysłać do serwera przez fetch().
- AbortControllerPozwala przerwać operację asynchroniczną, np. zapytanie fetch(), i odpiąć wiele obsług zdarzeń naraz jednym wywołaniem abort().
- console.log()Wypisuje wartości w konsoli przeglądarki. Obiekt console ma też metody warn(), error(), table(), group(), time(), count() i assert().