Was ist JavaScript?

Artikel

JavaScript ist eine leichtgewichtige, interpretierte Programmiersprache mit erstklassigen Funktionen. Es ist die einzige Programmiersprache, die nativ in allen großen Webbrowsern läuft, was es zur Sprache des Webs macht. JavaScript fügt HTML-Seiten Interaktivität, Animationen und dynamisches Verhalten hinzu. Dank Node.js läuft es auch auf Servern, was es zur einzigen Sprache macht, die sowohl Front-End- als auch Back-End-Entwicklung abdeckt.

JavaScript-Datei formatieren oder verschönern?

JavaScript Formatierer öffnen →

Geschichte

JavaScript wurde von Brendan Eich bei Netscape in nur 10 Tagen im Mai 1995 entwickelt. Es hieß ursprünglich Mocha, dann LiveScript, bevor es in JavaScript umbenannt wurde — eine Marketingentscheidung, um von der Popularität von Suns Java zu profitieren. Trotz der Namensähnlichkeit sind die beiden Sprachen nicht verwandt. JavaScript wurde 1997 von Ecma International als ECMAScript (ES) standardisiert. Wichtige Meilensteine sind ES5 (2009), ES6/ES2015 (2015 — das größte Update in der Sprachgeschichte) und jährliche Releases ab ES2016.

Grundlegende Syntax

JavaScript ist dynamisch typisiert: Variablen können Werte beliebigen Typs speichern und Typen werden zur Laufzeit überprüft. Modernes JavaScript verwendet let und const für Variablendeklarationen. Funktionen sind erstklassige Werte und können Variablen zugewiesen, als Argumente übergeben und von anderen Funktionen zurückgegeben werden.

// Variablen
const name = "Max";
let alter = 30;

// Funktion
function begruesse(person) {
  return `Hallo, ${person}!`;
}

// Pfeilfunktion
const quadrat = (n) => n * n;

// Array-Methoden
const zahlen  = [1, 2, 3, 4, 5];
const doppelt = zahlen.map(n => n * 2);        // [2, 4, 6, 8, 10]
const gerade  = zahlen.filter(n => n % 2 === 0); // [2, 4]

// Async / Await
async function benutzerLaden(id) {
  const antwort = await fetch(`/api/benutzer/${id}`);
  const daten   = await antwort.json();
  return daten;
}

Datentypen

JavaScript hat acht Datentypen — sieben primitive und einen Objekttyp:

Kernkonzepte

Häufige Anwendungsfälle

JavaScript vs. Java

Trotz des ähnlichen Namens sind JavaScript und Java völlig verschiedene Sprachen:

JavaScript vs. TypeScript

TypeScript ist eine von Microsoft entwickelte Obermenge von JavaScript, die zu reinem JavaScript kompiliert:

Wichtige Regeln

Häufig gestellte Fragen

Was ist JavaScript?

JavaScript ist eine leichtgewichtige, interpretierte Programmiersprache mit erstklassigen Funktionen. Es ist die einzige Programmiersprache, die nativ in Webbrowsern läuft, und wird verwendet, um Webseiten Interaktivität, Animationen und dynamisches Verhalten hinzuzufügen. Mit Node.js kann es auch auf Servern laufen.

Wofür wird JavaScript verwendet?

JavaScript wird für interaktive Webseiten (Formularvalidierung, Animationen, DOM-Manipulation), Single-Page-Anwendungen (React, Vue, Angular), serverseitige Entwicklung (Node.js), mobile Apps (React Native), Desktop-Apps (Electron) und Browser-Erweiterungen verwendet.

Ist JavaScript dasselbe wie Java?

Nein. JavaScript und Java sind völlig verschiedene Sprachen, die nur einen ähnlichen Namen teilen. Java ist kompiliert, statisch typisiert und objektorientiert. JavaScript ist interpretiert, dynamisch typisiert und wurde ursprünglich für Browser-Scripting entwickelt.

Was ist der Unterschied zwischen JavaScript und TypeScript?

TypeScript ist eine von Microsoft entwickelte Obermenge von JavaScript, die optionale statische Typisierung hinzufügt. TypeScript-Code kompiliert zu reinem JavaScript. Aller JavaScript-Code ist gültiger TypeScript, aber TypeScript fügt Typannotationen, Interfaces und Generics hinzu, die helfen, Fehler zur Kompilierzeit zu finden.

Ist JavaScript Front-End oder Back-End?

Beides. JavaScript lief ursprünglich nur in Browsern (Front-End). Mit Node.js (2009) kann JavaScript nun auch auf Servern (Back-End) laufen. Das macht JavaScript zur einzigen Sprache, die für sowohl Front-End als auch Back-End-Entwicklung eingesetzt werden kann.

Ist JavaScript einfach zu lernen?

JavaScript hat eine relativ niedrige Einstiegshürde — Sie brauchen nur einen Browser, um anzufangen. Grundkonzepte wie Variablen, Schleifen und Funktionen sind unkompliziert. Asynchrone Programmierung, der Event-Loop, prototypische Vererbung und Framework-Ökosysteme brauchen jedoch Zeit zum Meistern.

Verwandte Artikel

Quellen