JavaScript-Variablenbereich (mit Beispielen)

In diesem Tutorial lernen Sie anhand von Beispielen den variablen Bereich in JavaScript kennen.

Der Bereich bezieht sich auf die Verfügbarkeit von Variablen und Funktionen in bestimmten Teilen des Codes.

In JavaScript hat eine Variable zwei Arten von Gültigkeitsbereichen:

  1. Globaler Geltungsbereich
  2. Lokaler Geltungsbereich

Globaler Geltungsbereich

Eine Variable, die am Anfang eines Programms oder außerhalb einer Funktion deklariert ist, wird als globale Bereichsvariable betrachtet.

Sehen wir uns ein Beispiel für eine globale Bereichsvariable an.

 // program to print a text let a = "hello"; function greet () ( console.log(a); ) greet(); // hello

Im obigen Programm wird die Variable a am Anfang eines Programms deklariert und ist eine globale Variable. Dies bedeutet, dass die Variable an aeiner beliebigen Stelle im Programm verwendet werden kann.

Der Wert einer globalen Variablen kann innerhalb einer Funktion geändert werden. Beispielsweise,

 // program to show the change in global variable let a = "hello"; function greet() ( a = 3; ) // before the function call console.log(a); //after the function call greet(); console.log(a); // 3

Im obigen Programm ist die Variable a eine globale Variable. Der Wert von a ist hallo. Dann wird innerhalb einer Funktion auf die Variable a zugegriffen und der Wert auf 3 geändert .

Daher ändert sich der Wert eines nach dem Ändern innerhalb der Funktion.

Hinweis : Es wird empfohlen, die Verwendung globaler Variablen zu vermeiden, da sich der Wert einer globalen Variablen in verschiedenen Bereichen des Programms ändern kann. Es kann unbekannte Ergebnisse in das Programm einbringen.

In JavaScript kann eine Variable auch verwendet werden, ohne sie zu deklarieren. Wenn eine Variable verwendet wird, ohne sie zu deklarieren, wird diese Variable automatisch zu einer globalen Variablen.

Beispielsweise,

 function greet() ( a = "hello" ) greet(); console.log(a); // hello

Im obigen Programm ist die Variable a eine globale Variable.

Wenn die Variable mit deklariert wurde let a = "hello", würde das Programm einen Fehler auslösen.

Hinweis : In JavaScript "strict mode";kann eine Variable nicht ohne Deklaration verwendet werden. Um mehr über strict zu erfahren, besuchen Sie JavaScript Strict.

Lokaler Geltungsbereich

Eine Variable kann auch einen lokalen Bereich haben, dh nur innerhalb einer Funktion kann darauf zugegriffen werden.

Beispiel 1: Lokale Bereichsvariable

 // program showing local scope of a variable let a = "hello"; function greet() ( let b = "World" console.log(a + b); ) greet(); console.log(a + b); // error

Ausgabe

 helloWorld Uncaught ReferenceError: b ist nicht definiert

Im obigen Programm ist die Variable a eine globale Variable und die Variable b eine lokale Variable. Auf die Variable b kann nur innerhalb der Funktionsbegrüßung zugegriffen werden. Wenn wir versuchen, auf die Variable b außerhalb der Funktion zuzugreifen, tritt daher ein Fehler auf.

let is Block Scoped

Das letSchlüsselwort hat einen Blockbereich (auf Variablen kann nur im unmittelbaren Block zugegriffen werden).

Beispiel 2: Variable mit Blockbereich

 // program showing block-scoped concept // global variable let a = 'Hello'; function greet() ( // local variable let b = 'World'; console.log(a + ' ' + b); if (b == 'World') ( // block-scoped variable let c = 'hello'; console.log(a + ' ' + b + ' ' + c); ) // variable x cannot be accessed here console.log(a + ' ' + b + ' ' + c); ) greet();

Ausgabe

 Hallo Welt Hallo Welt Hallo Nicht gefangener Referenzfehler: x ist nicht definiert

Im obigen Programm variabel

  • a ist eine globale Variable. Es kann überall im Programm zugegriffen werden.
  • b ist eine lokale Variable. Es kann nur innerhalb der Funktion zugegriffen werden greet.
  • c ist eine Variable mit Blockbereich. Es kann nur innerhalb des ifAnweisungsblocks zugegriffen werden .

Daher console.log()funktionieren im obigen Programm die ersten beiden ohne Probleme.

Wir versuchen jedoch, auf die Variable c mit Blockbereich c außerhalb des Blocks im dritten zuzugreifen console.log(). Dies wird einen Fehler auslösen.

Hinweis : In JavaScript varist der Funktionsbereich und letder Blockbereich. Wenn Sie versuchen, var c = 'hello';innerhalb der ifAnweisung im obigen Programm zu verwenden, funktioniert das gesamte Programm, da c als lokale Variable behandelt wird.

Um mehr über letversus zu erfahren var, besuchen Sie JavaScript let vs var.

Interessante Beiträge...