Was ist JavaScript? Definition & Einordnung
JavaScript ist per Definition eine Skriptsprache, die ursprünglich für dynamische HTML-Inhalte im Webbrowser entwickelt wurde. Sie wird direkt im Browser ausgeführt und ermöglicht es, auf Benutzerinteraktionen zu reagieren sowie Webseiteninhalte in Echtzeit zu verändern, nachzuladen oder neu zu generieren.
Entstehungsgeschichte
Netscape-Entwickler Brendan Eich entwickelte JavaScript im Jahr 1995 zunächst unter dem Namen „LiveScript“. Im selben Jahr wurde die Skriptsprache in „JavaScript“ umbenannt, im Zuge einer Marketingkooperation mit Sun Microsystems. Dabei wurde der Name JavaScript gewählt, um von der Popularität der Programmiersprache Java zu profitieren.
Standardisierung
1997 folgte die offizielle Standardisierung der Sprache durch Ecma International als ECMAScript® (Standard ECMA-262). Der Standard wird von Ecma International jährlich aktualisiert. Die aktuellste Ausgabe (Stand 2023) ist die ECMAScript® 2023 (14. Edition).
Was macht JavaScript? Die Funktion einfach erklärt:
- JavaScript funktioniert in erster Linie durch die Kombination aus einer JS-Engine, die den Code interpretiert, sowie einem Umfeld, das JavaScript Zugriff auf bestimmte Objekte (Document Object Model, Web-APIs) gewährt.
- Moderne Engines nutzen Just-in-Time-Kompilierung, um den Code während der Laufzeit in Maschinencode zu übersetzen und die Ausführung zu beschleunigen.
- Üblicherweise läuft JavaScript clientseitig im Browser; mit Laufzeitumgebungen wie Node.js kann es jedoch auch serverseitig ausgeführt werden.
- Die Single-Threaded-Natur von JavaScript wird durch asynchrone Mechanismen und einen Event Loop ergänzt, um reaktive und dynamische Anwendungen zu ermöglichen.
Wie kann man JavaScript nutzen?
Zusammen mit HTML und CSS bildet JavaScript das Fundament, um moderne Webanwendungen zu gestalten. Im Browser (Client-Seite) sorgt es für interaktive, dynamische Webseiteninhalte, während es serverseitig für die Programmierung von Webservern und Backend-Logik genutzt wird. Auf JavaScript basierende Frameworks wie React Native, Ionic oder Electron ermöglichen Apps für Smartphones und Desktops.
Bedeutung von JavaScript für bekannte Web-Technologien:
- JSON (JavaScript Object Notation) orientiert sich an der Syntax von JavaScript und wird oft für den Datenaustausch in Webanwendungen genutzt. Durch die enge Verwandtschaft lässt sich JSON sehr leicht in JavaScript verarbeiten, was die Entwicklung von APIs und datengetriebenen Anwendungen vereinfacht.
- AJAX (Asynchronous JavaScript and XML) ist ein Konzept, das JavaScript verwendet, um Daten asynchron zu laden oder zu senden. Statt ganze Seiten neu zu laden, können gezielt Daten vom Server abgefragt werden. Häufig wird dabei JSON als Format für den Datenaustausch eingesetzt.
- HTML5 führte neue Semantik- und Multimedia-Funktionen ein, die in Verbindung mit JavaScript noch vielseitigere Webanwendungen ermöglichen. So können etwa Videos, Canvas-Elemente oder lokale Speicherfunktionen (Local Storage) direkt eingebunden und über JavaScript gesteuert werden.
Einfaches Beispiel für clientseitiges JavaScript:
Ein DOM-Element (Document Object Model) wird manipuliert, nachdem ein Nutzer eine Aktion (Klick) ausgelöst hat:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>JavaScript-Beispiel</title>
</head>
<body>
<p id="demo">Alter Text</p>
<!-- Button, der beim Klick eine Funktion aufruft -->
<button onclick="changeText()">Klicke mich!</button>
<script>
function changeText() {
// Greife auf das Element mit der ID "demo" zu
// und ändere den Text
document.getElementById("demo").textContent = "Neuer Text!";
}
</script>
</body>
</html>
- Im
<body>
befindet sich ein Absatz mit der ID „demo“, in dem zunächst „Alter Text“ steht. - Ein Button ruft beim Klick die Funktion
changeText()
auf. - Diese Funktion greift via
document.getElementById("demo")
auf das Absatz-Element zu und ändert dessen Text auf „Neuer Text!“.
Verwendung von JavaScript in der Softwaremodernisierung:
Für die Softwaremodernisierung ist JavaScript unverzichtbar, um zukunftsfähige Funktionalitäten zu integrieren oder Benutzeroberflächen neu zu gestalten. So lassen sich unter anderem plattformunabhängige Single Page Applications erstellen, die schnelle und reaktionsfreudige Oberflächen ermöglichen. JSON, AJAX und HTML5 unterstützen diesen Ansatz, indem sie Datenflüsse, Benutzerinteraktionen und Darstellungsmöglichkeiten in modernen Webumgebungen verbessern.
Beispiel bei fecher:
Im Rahmen einer WPF-Migration zur Browser-App erstellen wir bei fecher eine auf ASP.NET Core basierende HTML5-/JavaScript-/CSS-Webanwendung mit identischer Funktionalität und User Experience.
Sie interessieren sich für Anwendungsentwicklung und Anwendungsmodernisierung? Neben diesem Beitrag zur Definition von JavaScript finden Sie weitere Erläuterungen und Begriffsklärungen in unserem IT-Glossar!