Werte zurückgeben
Die Funktion gibFlaecheAus, die du eben geschrieben hast, gibt die Fläche aus, und das war's. Aber was ist, wenn wir mit dem Ergebnis weiterrechnen wollen, zum Beispiel die Flächen aller Zimmer einer Wohnung addieren? Ein ausgegebener Wert wird nur in der Konsole angezeigt; das Programm kann damit nicht mehr arbeiten.
Deshalb können Funktionen einen Wert zurückgeben. Das Schlüsselwort return schickt einen Wert an die Stelle zurück, an der die Funktion aufgerufen wurde:
function addiere(a, b) {
return a + b;
}
const summe = addiere(2, 3);
console.log(summe);Das gibt aus:
5Der Aufruf addiere(2, 3) führt die Funktion aus, und die Funktion gibt 5 zurück. Du kannst dir vorstellen, dass JavaScript den Aufruf durch den Wert ersetzt, den die Funktion zurückgegeben hat, aus const summe = addiere(2, 3); wird also const summe = 5;. Der Wert, den eine Funktion zurückgibt, heißt ihr Rückgabewert.
Du kannst einen Aufruf überall verwenden, wo du einen Wert schreiben würdest: ihn direkt ausgeben oder damit rechnen:
function addiere(a, b) {
return a + b;
}
console.log(addiere(2, 3));
const gesamt = addiere(2, 3) * 2;
console.log(gesamt);Das gibt aus:
5
10In console.log(addiere(2, 3)) ruft JavaScript zuerst addiere(2, 3) auf und gibt dann die 5 aus, die die Funktion zurückgegeben hat. In addiere(2, 3) * 2 wird der Aufruf zu 5, und 5 * 2 ist 10.
Anfänger verwechseln oft return und console.log. console.log zeigt dir einen Wert nur in der Konsole an. return gibt den Wert an das Programm, das ihn speichern, damit rechnen oder ihn ausgeben kann. Schau, was passiert, wenn eine Funktion ihr Ergebnis ausgibt, statt es zurückzugeben:
function gibSummeAus(a, b) {
console.log(a + b);
}
const ergebnis = gibSummeAus(2, 3);
console.log(ergebnis);Das gibt aus:
5
undefinedDie 5 hat das console.log in der Funktion ausgegeben. Aber die Funktion hat nichts zurückgegeben, und eine Funktion ohne return gibt undefined zurück. Also ist ergebnis gleich undefined. Deshalb geben die meisten Funktionen ihr Ergebnis zurück, und der Code, der sie aufruft, entscheidet, was damit geschieht.
So schreibst du es:
Anweisungen
- 1
Vervollständige die Funktion
rechteckFlaecheso, dass siebreite * hoehezurückgibt. Das Programm gibt dannKüche: 12undSchlafzimmer: 20aus. - 2
Die Wohnung hat außerdem ein Wohnzimmer von 6 × 5 Metern. Erstelle eine Variable
wohnzimmermit seiner Fläche, berechnet mit der FunktionrechteckFlaeche. Gib dann die Fläche der ganzen Wohnung aus,kueche + schlafzimmer + wohnzimmer, mit der Beschriftung"Ganze Wohnung:". Es sollte62herauskommen.