JavaScript Global, Funktion und Block Scope | Erklärt

JavaScript Global, Funktion und Block Scope | Erklärt
JavaScript ist auf dem aktuellen Programmiermarkt ziemlich bekannt, und das liegt an seiner enormen Nutzung. JavaScript -Entwickler zu werden ist nicht nur ein guter Job, sondern es ist jetzt wichtig, auf dem Programmiermarkt zu überleben. JavaScript hängt, genau wie jede andere Programmiersprache, von der Verwendung von Variablen ab. Und jede Variable hat ihren eigenen Umfang.

In der Programmierung ist der Umfang als Zugänglichkeit der Variablen definiert. Oder in technischeren Begriffen ist es der Hinweis auf den Kontext des Code. Wie können wir also zwischen dem Umfang der Variablen und von welchen Faktoren unterscheiden, wie dieser „Umfang“ abhängt?? Nun, wir werden alles, was mit dem variablen Umfang in JavaScript zu tun hat, abdecken.

Variabler Umfang in JavaScript

In JavaScript gibt es 3 Arten des variablen Bereichs, nämlich:

  • Globaler Umfang
  • Funktionsumfang
  • Blockbereich

Obwohl früher nur noch zwei Arten von Scopes vorhanden waren Es6, der globale Bereich und der lokale Umfang. Aber mit ES6 wurde der lokale Bereich in Funktionsumfang und Blockbereich unterteilt.

Beginnen wir zuerst mit dem globalen Bereich.

Globaler Umfang

Die außerhalb eines definierten Variablen Funktion oder lockig Klammern werden als globale Variablen bezeichnet und haben globalen Umfang. Globaler Umfang bedeutet, dass auf die Variablen aus jedem Teil dieses Programms zugegriffen werden kann. Jede Funktion oder jeder bedingte Zustand kann auf diese Variable zugreifen.

Zum Beispiel

var name = "LinuxHint";
Funktion printName ()
// Auf die Variable kann hier im Inneren zugegriffen werden
Konsole.log ("Dieses Tutorial ist per"+Name);

printName ();

Ausgang

Notiz: Es ist keine gute Praxis, globale Variablen zu verwenden, wenn sie nicht benötigt werden, da jeder Codeblock Zugriff auf diese Variablen hat.

Lokaler Bereich

Wenn Sie einige Variablen im Inneren definieren geschweifte Klammern oder innerhalb einer bestimmten Funktion werden diese Variablen als lokale Variablen bezeichnet. Die lokalen Variablen haben einen sehr engen Bereich, der als lokaler Bereich bezeichnet wird. Mit der Freisetzung von ES6 wurde der lokale Bereich weiter in zwei verschiedene Bereiche unterteilt:

  • Funktionsumfang
  • Blockbereich.

Funktionsumfang

Der Funktionsbereich ist die Zugänglichkeit der in einer Funktion definierten Variablen. Diese Variablen können nicht von einer anderen Funktion oder sogar außerhalb der Funktion in der Hauptdatei zugegriffen werden.

Zum Beispiel
Zunächst haben wir in einer Funktion eine Variable erstellt und in der Funktion auf sie zugegriffen:

Funktion ABC ()
Jahr = 2021;
// Die Variable "Jahr" kann in dieser Funktion zugegriffen werden
Konsole.log ("Das Jahr ist"+ Jahr);

// Auf die Variable "Jahr" kann hier außerhalb nicht zugegriffen werden
ABC();

Ausgang

Sie können in der Ausgabe sehen, dass es wie erwartet vollkommen gut funktioniert.

Wenn wir jedoch versuchen, außerhalb der Funktion auf diese Variable zugreifen zu können, erhalten wir einen Fehler:

Funktion ABC ()
Jahr = 2021;
// Die Variable "Jahr" kann in dieser Funktion zugegriffen werden

// Auf die Variable "Jahr" kann hier außerhalb nicht zugegriffen werden
Konsole.log ("Das Jahr ist"+ Jahr);
ABC();

Blockbereich

Blockbereich ist auch ein Untertyp des lokalen Bereichs. Der Blockbereich kann definiert werden als der Umfang der Variablen innerhalb der geschweifte Klammern . Jetzt können diese lockigen Klammern aus Schleifen oder bedingten Aussagen oder etwas anderem sein. Sie dürfen sich nur auf diese Variablen aus innerhalb der beziehen geschweifte Klammern .

Stellen Sie sich eine verschachtelte Situation vor:
Ein Codeblock mitschlossen mit geschweifte Klammern einige Blockvariablen enthalten.


Sei a = 10;
const b = 5;

Dieser Codeblock befindet sich in einer Funktion.

Funktion Addition ()

Sei a = 10;
const b = 5;

Wenn wir nun versuchen, aus innerhalb der Funktion auf die Variablen zuzugreifen, außer außerhalb dieses bestimmten Blocks.

Funktion Addition ()

Sei a = 10;
const b = 5;

Konsole.log (a + b);

Und um auf diese Funktion zuzugreifen, müssen wir sie aufrufen, bis:

Zusatz();

Dann werden wir mit einem Fehler aufgenommen, obwohl es sich um lokale Variablen derselben Funktion handelt.

Die Schlüsselwörter lassen Und Const werden verwendet, um Blockvariablen zu definieren.

Zum Beispiel
Die folgenden Überprüfungen über die von einem Schüler erhaltenen Noten und zeigen, ob der Schüler bestanden oder gescheitert ist.

MarksObated = 60
if (marksObTained> = 45)
lass status = "bestanden";
Konsole.log ("Betroffene:" + Status);

anders
lass status = "fehlgeschlagen";
Konsole.log ("Betroffene:" + Status);

Wir haben eine in Block gescopte lokale Variable erstellt, die innerhalb eingeschlossen ist geschweifte Klammern Durch die Verwendung des Schlüsselworts lassen. Wir können diesen Let mit dem sogar ersetzen Const. Die Ausgabe ist als:

Wenn Sie versuchen, sich von außerhalb der Funktion auf die lokale Variable zu beziehen, erhalten Sie einen Fehler "Status (variabler Name) ist nicht definiert":

Notiz: Um sich auf die zu beziehenStatusVariable, wir rufen die an Konsole.Protokoll() Funktion von außerhalb der bedingten Klammern;

Bedeutung von LET und CONT -Schlüsselwort während der Deklaration von Blockvariablen

Wenn Sie eine Variable im Inneren deklarieren geschweifte Klammern ohne die zu verwenden lassen und das Const Schlüsselwörter, dann wird die Variable als "als" deklariert "Globale Variable”. Dies liegt an der Tatsache, dass Schlüsselwörter ihre Bereiche vordefiniert haben. Um mehr über Variable zu erfahren, die Keywords deklarieren. Um dies zu zeigen, werden wir die entfernen lassen Schlüsselwort aus dem oben genannten Code -Snippet und führen Sie den Code aus.

Wie Sie deutlich sehen können, konnten wir außerhalb der auf diese Variable zugreifen geschweifte Klammern , Dies bedeutet, dass die Variable ohne die Schlüsselwörter „Let“ und „const“ mit einem globalen Bereich definiert wird.

Abschluss

Variablen sind „der wichtigste“ Teil einer Programmiersprache. Variablen haben unterschiedliche Bereiche, je nachdem, wie sie deklariert werden. In JavaScript kann eine Variable einer von drei verschiedenen Bereichen sein, global, lokal und Block. Wir haben gelernt, wie diese variablen Bereiche in JavaScript funktionieren, indem mehrere Beispiele übernommen wurden.