Text und Zahlen
Jeder Wert in JavaScript hat einen Typ. Bisher hast du zwei Typen verwendet:
- Zahlen, wie
25oder1.5, mit denen du rechnen kannst; - Text, wie
"Hallo". Programmierer nennen ihn einen String, englisch für „Zeichenkette“.
Deshalb braucht Text Anführungszeichen und Zahlen nicht: 25 ist eine Zahl, aber "25" ist Text aus den Zeichen 2 und 5. Der Typ entscheidet, was ein Operator tut. Zum Beispiel addiert + zwei Zahlen, verbindet aber zwei Strings:
console.log(5 + 3);
console.log("5" + "3");
console.log("5" + 3);Das gibt Folgendes aus:
8
53
53Die letzte Zeile überrascht viele. Wenn eine Seite von + ein String ist, macht JavaScript auch die andere Seite zu einem String und verbindet sie. Deshalb kannst du Text mit Zahlen verbinden: "Ich bin " + 25 + " Jahre alt." ergibt "Ich bin 25 Jahre alt."
In der Ausgabe siehst du den Typ nicht: console.log(5) und console.log("5") geben beide 5 aus. Den Typ eines Werts findest du mit typeof heraus:
console.log(typeof 5);
console.log(typeof "5");Das gibt Folgendes aus:
number
stringtypeof funktioniert auch mit Variablen: typeof preis liefert den Typ des Werts, der in preis gespeichert ist.
Ein typischer Fehler ist eine Zahl in Anführungszeichen. Dann verbindet +, statt zu addieren, und das Ergebnis sieht seltsam aus:
const aepfel = "5";
console.log(aepfel + 1);Das gibt 51 statt 6 aus. Wenn dich ein Ergebnis so überrascht, prüfe die Typen mit typeof.
So schreibst du es:
Anweisungen
- 1
Das Programm soll
Nächstes Jahr bist du 26ausgeben, gibt aberNächstes Jahr bist du 251aus. Finde heraus, warum: Gib in einer neuen Zeile mittypeofden Typ vonalteraus. - 2
Es gibt
stringaus:alterenthält Text, weil sein Wert in Anführungszeichen steht. Behebe das: Entferne die Anführungszeichen um25, sodassaltereine Zahl enthält. Dann gibt das ProgrammNächstes Jahr bist du 26aus, undtypeofgibtnumberaus.