Irgendwelche Fragen?
F.A.Q.
Registrieren Login

Jetzt einloggen

Verbinden mit:

Einloggen mit Facebook Einloggen mit Google
logo


Passwort vergessen?

Noch kein Mitglied?Jetzt Registrieren

PanjutorialsPanjutorials
  • Tutorials
    • Tutorials

    Globale und Lokale Variablen

    • Home
    • Tutorials
    • Web-Development
    • Javascript Tutorial
    • Globale und Lokale Variablen

    Es gibt globale und lokale Variablen. Kurz zusammengefasst, globale Variablen sind die Variablen die man außerhalb von Funktionen anlegt und lokale Variablen sind diejenigen die man innerhalb von Funktionen anlegt.

    Für eine detailliertere Erklärung füge ich hier den Text zu Sichtbarkeit von Variablen von Wikipedia ein:

    Sichtbarkeitsbereich von Variablen (Scope)

    Unter dem Sichtbarkeitsbereich einer Variablen versteht man den Programmabschnitt, in dem die Variable nutzbar und sichtbar ist. Da eine lokale Variable in den meisten Programmiersprachen den gleichen Namen tragen darf wie eine globale Variable, sind Sichtbarkeitsbereiche nicht notwendig zusammenhängend: durch die Deklaration einer lokalen Variable wird die gleichnamige globale Variable für einen bestimmten Block ?verschattet?, das heißt, sie ist temporär nicht sichtbar.

    Die Sichtbarkeitsregeln können auf zwei unterschiedliche (sich gegenseitig ausschließende) Arten festgelegt werden; dabei ist das Konzept der Bindung wichtig. Bindung bedeutet hier die Zuordnung eines bestimmten Namens zu der damit verbundenen Variablen.

    • Lexikalisch (oder statisch), das heißt, der umgebende Programmtext (die Definition) bestimmt die Bindung
    • Dynamisch, das heißt, die Ausführungsgeschichte zur Laufzeit des Programms bestimmt die Bindung.

    Im Fall einer lexikalischen Bindung sind die Bindungen für einen ganzen Block immer die gleichen, weil sie allein durch die Blockstruktur vorgegeben sind. Man kann daher allein durch Analyse des Programmtextes einer Funktion verstehen, wie sich die Funktion verhält. Dieses Konzept unterstützt daher modulares Programmieren.

    Bei dynamischen Bindungsregeln können zur Laufzeit immer neue Bindungen eingeführt werden; diese gelten dann so lange, bis sie explizit aufgehoben werden oder durch eine neue dynamische Bindung verschattet werden. Man kann daher durch Analyse des Programmtextes einer Funktion nicht notwendigerweise verstehen, wie sich diese verhält. Selbst die Analyse des gesamten Programmtextes eines Programms hilft nicht. Es lässt sich statisch nicht verstehen, wie sich die Funktion verhält. Ihr Verhalten hängt von den jeweiligen (direkt und indirekt) aufrufenden Funktionen ab. Dies widerspricht dem Konzept des modularen Programmierens.

    Die meisten modernen Programmiersprachen unterstützen nur lexikalische Bindung, z. B. C++, C, ML, Haskell, Python, Pascal. Einige wenige unterstützen nur dynamische Bindung (z. B. Emacs Lisp, Logo) und einige (z. B. Perl und Common Lisp) erlauben dem Programmierer für jede lokale Variable festzulegen, ob sie nach lexikalischen (statischen) oder dynamischen Regeln gebunden sein soll.

    Verschiedene Gültigkeitsbereiche von Variablen

    Wenn wir nun eine Variable innerhalb einer Funktion erstellen, können wir diese nicht in einer anderen Funktion verwenden.

    Beispiel für Globale und Lokale Variablen in Javascript

    
    <script type="text/javascript">
    	var globaleV = 10;
    	function lokaleFunktion(){
    		var lokaleV = 5;
    		document.write(lokaleV);
    	}
    	function neandereFunktion(){
    		document.write(globaleV);
    		/* 
    		die folgende Zeile wird nichts ausgeben, 
    		da diese Funktion die Variable lokaleV nicht kennt
    		*/
    		document.write(lokaleV);
    	}
    	lokaleFunktion();
    	neandereFunktion();
    </script>
    
    

    Im nächsten Tutorial werden wir uns mit dem Return Statement beschäftigen.

    Vorherig Funktionen in Funktionen
    Nächste Return Statement


    Kostenlos

    Javascript Tutorial

    • Einführung

      • Lektion1.1
        Vorschau
        Erster Alert
      • Lektion1.2
        Vorschau
        Variablen
      • Lektion1.3
        Vorschau
        Variablentypen
      • Lektion1.4
        Vorschau
        Kommentieren in Javascript
    • Funktionen

      • Lektion2.1
        Vorschau
        Funktionen in Javascript
      • Lektion2.2
        Vorschau
        Funktionen mit einem Parameter
      • Lektion2.3
        Vorschau
        Funktionen mit mehreren Parametern
      • Lektion2.4
        Vorschau
        Funktionen in Funktionen
      • Lektion2.5
        Vorschau
        Globale und Lokale Variablen
      • Lektion2.6
        Vorschau
        Return Statement
    • Operatoren und Schleifen

      • Lektion3.1
        Vorschau
        Mathematische Operatoren
      • Lektion3.2
        Vorschau
        Zuweisungsoperator
      • Lektion3.3
        Vorschau
        Do While Loop (Schleife)
      • Lektion3.4
        Vorschau
        While Schleife (loop)
      • Lektion3.5
        Vorschau
        For Loop
      • Lektion3.6
        Wie mache ich am besten weiter?
    • If-Statements und Switch-Case

      • Lektion4.1
        Vorschau
        If und Else If Abfragen
      • Lektion4.2
        Vorschau
        Verschachtelte If Bedingungen
      • Lektion4.3
        Vorschau
        Komplexe If Bedingungen
      • Lektion4.4
        Vorschau
        Switch und Case
    • Objekte

      • Lektion5.1
        Vorschau
        Objekte in Javascript
      • Lektion5.2
        Vorschau
        Objekte erstellen
      • Lektion5.3
        Vorschau
        Objekt Funktionen
      • Lektion5.4
        Vorschau
        Object Initializer
      • Lektion5.5
        Vorschau
        Math Objekte
      • Lektion5.6
        Vorschau
        Date Objekte
    • Arrays

      • Lektion6.1
        Vorschau
        Arrays in Javascript
      • Lektion6.2
        Vorschau
        Arrays 2
      • Lektion6.3
        Vorschau
        Array Eigenschaften
      • Lektion6.4
        Vorschau
        Array Funktionen push, reverse, shift
      • Lektion6.5
        Vorschau
        Array For Loops
      • Lektion6.6
        Vorschau
        Prompt und Associative Arrays

    Beliebte Kurse

    Spiele entwickeln mit Unity 3D – Erstelle eigene Games in C# - Starter

    Willkommen zum kostenlosen Teil des Kurses: "Spiele entwickeln mit Unity...
    Kostenlos

    Werde zum iOS 11 & Swift Entwickler in 6 Wochen - Starter

    Willkommen zum kostenlosen Teil des Kurses: "Werde zum iOS 11...
    Kostenlos

    Werde zum kompletten Web - Entwickler in nur 6 Wochen - Starter

    Willkommen zum kostenlosen Teil des Kurses: "Werde zum kompletten Web...
    Kostenlos
    Zu den Kursen

    Info

    • About Us
    • Kontakt
    • Blog

    Seite

    • Tutorials

    Support

    • FAQs
    • AGB
    • Impressum und Datenschutzerklärung

    Panjutorials | 2017