Heim  >  Artikel  >  Web-Frontend  >  Was ist Variable Shadowing in JavaScript?

Was ist Variable Shadowing in JavaScript?

Linda Hamilton
Linda HamiltonOriginal
2024-10-24 10:20:29543Durchsuche

What is Variable Shadowing in JavaScript?

Variablenschatten in JavaScript anhand eines Beispiels verstehen

Variablenschatten, ein Konzept in JavaScript, tritt auf, wenn eine Variable in einem engeren Bereich deklariert wird ( B. Funktion) überschreibt eine Variable mit demselben Namen, die in einem größeren Bereich (z. B. globaler Bereich) deklariert ist.

Betrachten Sie das folgende Beispiel, um dieses Konzept besser zu verstehen:

<code class="javascript">var currencySymbol = "$";

function showMoney(amount) {
  var currencySymbol = "€";
  console.log(currencySymbol + amount);
}

showMoney("100");</code>

In diesem Beispielsweise haben wir eine globale Variable mit dem Namen „currencySymbol“, die ursprünglich auf das Dollarzeichen „$“ eingestellt ist. Allerdings deklarieren wir innerhalb der showMoney-Funktion eine weitere Variable mit demselben Namen, diesmal auf das Euro-Zeichen „€“ gesetzt.

Wenn die showMoney-Funktion aufgerufen wird, überschattet die Währungssymbolvariable der Funktion die globale Variable des gleichen Namen. Dies bedeutet, dass innerhalb der Funktion der Wert von paymentSymbol zu „€“ wird und das Dollarzeichen aus dem globalen Bereich vorübergehend ausgeblendet wird.

Wenn wir also den Wert von paymentSymbol innerhalb der Funktion protokollieren, wird Folgendes ausgegeben: 100 €“, was den Override angibt. Dies zeigt den Effekt des Variablenschattens, bei dem eine in einem engeren Bereich deklarierte Variable eine in einem breiteren Bereich deklarierte Variable mit demselben Namen überschreibt.

Das obige ist der detaillierte Inhalt vonWas ist Variable Shadowing in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn