studyklar
IProg · Skript 2 · Abschnitt 4

JavaScript-Grundlagen: Interpreter, Typen, Gültigkeit von Variablen

JavaScript sieht aus wie Java, verhält sich aber oft anders. Hier geht es um drei Unterschiede, die in der Klausur zählen: wie JavaScript ausgeführt wird, wie es mit Typen umgeht und wo eine Variable gilt. Rechts stehen Code und Ausgabe. Mit Weiter geht es Schritt für Schritt voran.

Worum es geht

Skript 02 (JavaScript 1), Folien 15, 17 und 19 bis 23: JavaScript allgemein, eine Interpretersprache, Deklaration in HTML, Aufruf einer Funktion, Eigenschaften, Variablengültigkeit.

Wer Java kann, liest JavaScript ohne Mühe: Anweisungen, Bedingungen und Schleifen sind fast gleich. Die Frage dieses Abschnitts: Wo unterscheidet sich JavaScript, und was folgt daraus?

So gehen wir vor:

  1. Was eine Skriptsprache ist und wie das Script in die Seite kommt.
  2. Typen: warum ein Wert mal Zahl, mal Text ist.
  3. Gültigkeit von Variablen: var, let und const am Beispiel des Skripts.
  4. Eine kurze Klausurfrage dazu.

Eine Skriptsprache mit Interpreter

Skript · Folie 17

JavaScript ist eine „Skriptsprache“, wird von einem Interpreter ausgeführt; schwache, dynamische Typisierung (zur Erinnerung: Java verfügt über eine strenge Typisierung). Die Laufzeitumgebung im Browser arbeitet mit einer Sandbox: erlaubt ist nur Zugriff auf die Objekte des Browserfensters.

JavaScript ist eine Skriptsprache: Ein Interpreter liest das Programm und führt es Anweisung für Anweisung direkt aus. Anders als bei Java gibt es keinen Compiler, der vorher alles prüft und übersetzt.

Fast jeder Browser hat eine solche Laufzeitumgebung eingebaut. Sie startet beim Öffnen der Seite von selbst und räumt nicht mehr gebrauchten Speicher automatisch weg (Garbage Collector). Sie arbeitet in einer Sandbox, einem abgeschlossenen Bereich: Das Script darf nur auf die Objekte seines eigenen Browserfensters zugreifen, nicht auf Dateien des Rechners und nicht auf andere Fenster.

Entstanden ist JavaScript 1995 bei Netscape. Standardisiert ist es heute als ECMAScript. Mit Node.js läuft es auch auf dem Server.

Nicht jeder hat JavaScript an

  <noscript>JavaScript wird benötigt!</noscript>

In fast allen Browsern kann der Benutzer JavaScript in den Sicherheitseinstellungen abschalten. Eine Seite darf sich darum nicht blind darauf verlassen.

Mindestens sollte sie melden, dass JavaScript nötig ist. Dafür gibt es das Tag <noscript>: Sein Inhalt erscheint nur, wenn Scripte abgeschaltet sind (Zeile 10). Besser ist eine Seite, die auch ohne Script funktioniert. Das hilft auch bei der Barrierefreiheit.

Noch 11 Schritte bis zum Ergebnis
Den ganzen Lösungsweg sehen Studierende und Lehrende der HS KL. Registriere dich mit deiner Adresse @stud.hs-kl.de oder @hs-kl.de, dann geht es hier direkt weiter.

Abbildung 1Was JavaScript ist

Skriptsprache im Browser

Laufzeitumgebung im Browserstartet beim Öffnen der Seite · Interpreter führt das Script aus · räumt Speicher auf (Garbage Collector) · Sandbox
die Objekte des eigenen Browserfenstersdie Seite (DOM), Formulare, Fenster
✗ Dateisystemgesperrt
✗ andere Browserfenstergesperrt
Benutzer kann JavaScript abschaltendann zeigt der Browser den Inhalt von <noscript>
<head>  <script src="funktionen.js"></script>  <script>    function tuWas() {      alert("Hallo");    }  </script></head><body>  <noscript>JavaScript wird benötigt!</noscript>  <a href="javascript:tuWas()">Ruft bei Anklicken die Funktion tuWas auf</a>  <input type="button" value="check" onclick="tuWas()"/></body>
Legendegerade gemeintCode und Ausgabe.