Der Browser-Speicher localStorage ist nicht verfügbar. Entweder unterstützt dein Browser ihn nicht oder du hast ihn deaktiviert oder er ist voll. Ohne localStorage werden deine Lösungen nicht gespeichert.
Konstanten
Bisher haben wir Variablen mit
Einer Konstante muss man direkt bei der Deklaration einen Wert zuweisen. Eine Konstante nur deklarieren und ihr später einen Wert zuzuweisein, ist nicht zulässig.
Noch ein stylistischer Hinweis: Wir haben Konstanten mit Großbuchstaben geschrieben. Das ist keine Vorgabe. Wir hätten sie auch klein schreiben können.
Da man die Verwendung von Konstanten nicht gut testen kann, hier eine komplexere Aufgabe aus dem Bereich der Mathematik.
let
deklariert. Solchen Variablen kann man beliebig oft einen
neuen Wert zuweisen. Manchmal kommt es jedoch vor, dass eine Variable ihren Wert garnicht ändern soll.
Eine solche Variable könnte man natürlich auch mit let
deklarieren. Man muss dann aufpassen,
dass man ihren Wert nicht aus Versehen ändert. Besser wäre es, wenn man ihren Wert erst garnicht ändern kann. Hier kommt
const
ins Spiel:
const MEHRWERTSTEUER = 19;
let netto = 100;
let steuer = netto * MEHRWERTSTEUER / 100;
console.log(steuer);
MEHRWERTSTEUER = 20; // Programmfehler!
netto = 200;
steuer = netto * MEHRWERTSTEUER / 100;
console.log(steuer);
Eine Deklaration mit const
erzeugt eine Konstante. Eine Konstante funktioniert genauso wie eine mit
let
erzeugte Variable. Mit einem Unterschied: weist man einer Konstante einen neuen Wert zu, so kommt
es zu einem Programmfehler. Führt man obigen Code im JS-Hero Playground aus,
so wird korrekt 19
ausgegeben. Die nächste Steuer wird allerdings nicht ausgegeben.
Stattdessen erhalten wir einen Fehler wie "invalid assignment to const 'MEHRWERTSTEUER'". In Zeile 6 haben wir der
Konstanten MEHRWERTSTEUER
den neuen Wert 20
zugeordnet. Das ist nicht erlaubt. Das Programm
bricht an dieser Stelle mit dem genannten Fehler ab. Entfernt man diese Zeile, läuft das Programm korrekt durch.
Einer Konstante muss man direkt bei der Deklaration einen Wert zuweisen. Eine Konstante nur deklarieren und ihr später einen Wert zuzuweisein, ist nicht zulässig.
const HOUR_IN_SECONDS = 3600; // Korrekt!
const NUMBER_OF_WEEKDAYS; // Programmfehler!
NUMBER_OF_WEEKDAYS = 7;
Das Programm bricht in der zweiten Zeile mit einen Fehler wie "missing = in const declaration" ab.
Noch ein stylistischer Hinweis: Wir haben Konstanten mit Großbuchstaben geschrieben. Das ist keine Vorgabe. Wir hätten sie auch klein schreiben können.
mehrwertsteuer
geht genauso gut wie
MEHRWERTSTEUER
. Die Großschreibung hat jedoch den Vorteil, dass man Konstanten schon an ihrer Schreibweise
erkennt.
Da man die Verwendung von Konstanten nicht gut testen kann, hier eine komplexere Aufgabe aus dem Bereich der Mathematik.
Aufgabe
Schreibe eine Funktion
Beispiel:
primes
, die eine natürliche Zahl n entgegennimmt und ein Array aller
Primzahlen kleiner gleich n zurückgibt.Beispiel:
primes(10)
sollte [2, 3, 5, 7]
zurückgeben.