Mit Return wert zurückgeben

Kai-Behncke

Erfahrenes Mitglied
Hallo liebes Forum,


ich versuche gerade die return-Anweisung zu verstehen, bisher dachte ich immer, damit wird ein WErt einer Variablen an ein Hauptskript zurückgegeben.

Ich habe nun folgenden Code:

Code:
<script type="text/javascript">
    
var a;  
alert ("hallo");

function wertgeben(x)
{

var a=3*x;
alert (a);
return a;
}    

wertgeben(5);

alert (a);
</script>

Über return a; soll der WErt einfach an das Hauptskript zurückgegeben werden.
Ich dachte ich könnte das dann nach der Funktion (wertgeben(5) ganz einfach mit alert(a)
aufrufen, aber ein alert(a) ergibt "undefined"?
Kann mir jemand das erklären?
Wie könnte ich den den Wert a aus der Funktion außerhalb dieser Funktion nutzen?

Vielen Dank schon jetzt einmal.
 
Moin Kai,

wenn du eine Variable innerhalb einer Funktion mit dem Schlüsselwort var deklarierst
Code:
var a=3*x;
ist dies eine private Variable, die nur in der Funktion bekannt ist.

Sie hat also in deinem Fall nichts mit der globalen Variable a zu tun.

Lösung: lasse das var weg.

Das return selbst hat dort keine Auswirkung auf den Geltungsbereich der Variablen, es gibt nur den Inhalt der Variablen zurück, mehr nicht.
 
Hi,

ich versuche gerade die return-Anweisung zu verstehen, bisher dachte ich immer, damit wird ein WErt einer Variablen an ein Hauptskript zurückgegeben.

nur so zum Verständnis:
Mit return gibst Du einen Wert zurück, wohin kommt auf den Aufruf an. Du musst einen Rückgabewert einer Funktion auch einer Variablen Deiner Wahl zuweisen:

Code:
a = wertgeben(5);

Dann kannst Du auf globale Variablen innerhalb der Funktion verzichten. ;)

LG
 

Neue Beiträge

Zurück