EMZETT.
Login

Kurz: Dieses Kapitel fasst das Wichtigste des Kurses zum schnellen Nachschlagen zusammen.

Teil des Kurses JavaScript

Kapitel 40 von 40 im Kurs JavaScript. Mit Fortschritt, Quiz und Zertifikat auf der Lernseite.

Dieses Kapitel fasst das Wichtigste des Kurses zum schnellen Nachschlagen zusammen.

Datentypen und Prüfungen

AufgabeCode
Typ erfragentypeof x
Array prüfenArray.isArray(x)
NaN prüfenNumber.isNaN(x)
Ganzzahl prüfenNumber.isInteger(x)
Zu ZahlNumber(x), parseInt(x, 10), parseFloat(x), +x
Zu TextString(x), x.toString(), `${x}`
Zu BooleanBoolean(x), !!x
Falsy-Wertefalse 0 -0 0n "" null undefined NaN

Strings

AufgabeCode
Länges.length
Teils.slice(a, b), s.at(-1)
Suchens.includes(x), s.indexOf(x), s.startsWith(x), s.endsWith(x)
Ersetzens.replace(a, b), s.replaceAll(a, b)
Teilen/Verbindens.split(","), arr.join(",")
Aufräumens.trim(), s.toLowerCase(), s.toUpperCase()
Auffüllens.padStart(3, "0"), s.padEnd(5)
Wiederholens.repeat(3)
Sprachrichtig vergleichena.localeCompare(b, "de")

Arrays

AufgabeCode
Hinten/Vorn hinzufügenpush, unshift
Hinten/Vorn entfernenpop, shift
Mitte ändernsplice(i, n, ...neu)
Kopie/Teil[...a], a.slice(i, j)
Umwandelna.map(f)
Auswählena.filter(f)
Zusammenfassena.reduce((akku, x) => ..., start)
Findenfind, findIndex, findLast, includes, indexOf
Prüfensome(f), every(f)
Sortierena.toSorted((x, y) => x - y)
Flachmachenflat(), flatMap(f)
Eindeutig[...new Set(a)]
GruppierenObject.groupBy(a, f)

Objekte

AufgabeCode
Schlüssel/Werte/PaareObject.keys(o), Object.values(o), Object.entries(o)
Aus Paaren bauenObject.fromEntries(paare)
Prüfen"x" in o, Object.hasOwn(o, "x")
Kopieren{ ...o }, structuredClone(o)
EinfrierenObject.freeze(o)
Zugriff absicherno?.a?.b, o.a ?? standard

Funktionen und Klassen

AufgabeCode
Arrow-Funktion(a, b) => a + b
Standardwertfunction f(x = 1) {}
Rest-Parameterfunction f(...args) {}
Destructuringconst { a, b } = o, const [x, y] = arr
Klasseclass A extends B { constructor() { super(); } }
Privates Feld#feld
Getterget name() {}

Asynchron

AufgabeCode
Wartenawait new Promise(r => setTimeout(r, ms))
Parallelawait Promise.all([a(), b()])
Bester ErfolgPromise.any, Promise.race, Promise.allSettled
fetch + JSONconst r = await fetch(url); if (!r.ok) throw ...; const d = await r.json();
Fehlertry { await ... } catch (e) { ... } finally { ... }

DOM und Browser

AufgabeCode
Element findendocument.querySelector("#id .klasse"), querySelectorAll
Text/HTMLel.textContent = "...", el.innerHTML (vorsichtig)
Element erzeugendocument.createElement("li")
Einfügen/Entfernenparent.append(el), el.remove()
Klassenel.classList.add/remove/toggle/contains
Attributeel.setAttribute("x", "y"), el.dataset.name
Ereignisel.addEventListener("click", (e) => {})
Standard verhinderne.preventDefault()
SpeichernlocalStorage.setItem(k, JSON.stringify(v)), JSON.parse(localStorage.getItem(k))
URLnew URL(adresse).searchParams.get("q")

Node.js

AufgabeCode
Datei lesen/schreibenawait fs.readFile(p, "utf8"), await fs.writeFile(p, text)
Pfad bauenpath.join(a, b)
Argumente/Umgebungprocess.argv, process.env.NAME
Serverhttp.createServer((req, res) => {...}).listen(3000)
Paketenpm install x, npm run skript, npx werkzeug
Testsnode --test

Operatoren auf einen Blick

GruppeOperatoren
Rechnen+ - * / % **
Vergleichen=== !== < > <= >=
Logik&& || ! ??
Zuweisen= += -= *= /= ??= ||= &&=
Sonstiges?: ?. ... typeof instanceof in

Bekannte Fallen in einer Zeile

  • typeof null === "object", NaN !== NaN, 0.1 + 0.2 !== 0.3
  • sort() sortiert Text; für Zahlen (a, b) => a - b
  • "5" + 1 === "51", "5" - 1 === 4
  • const schützt nur die Zuweisung
  • fetch wirft nicht bei HTTP-Fehlern
  • Date-Monate beginnen bei 0
  • forEach wartet nicht auf await

Weiterlernen

  • MDN Web Docs (developer.mozilla.org): die beste Referenz für JavaScript, DOM und Web-APIs
  • javascript.info: ausführliches Tutorial
  • TypeScript: Typen für größere Projekte
  • Ein Framework (React, Vue, Svelte) und Node.js-Backend (Express, Fastify)
  • Eigene Projekte: ein Spiel mit Canvas, eine Wetter-App mit fetch, ein Chat mit WebSockets

Merke

  • Dieses Kapitel ist zum Nachschlagen gedacht; die Details stehen in den Kapiteln davor
  • Im Zweifel: MDN
  • Üben mit eigenen kleinen Projekten schlägt Lesen

Quiz zur Selbstkontrolle

Weiter im Kurs

Zurück: Projekt: Eine Aufgabenliste

Alle Kapitel: JavaScript im Überblick