JavaScript geschachtelte IF / ELSE-Anweisungen

Nisten ansonsten Anweisungen helfen, Bedingungen zu organisieren und zu isolieren, um zu vermeiden, dass dieselbe Bedingung zweimal getestet wird, oder um die Häufigkeit zu minimieren, mit der verschiedene Tests durchgeführt werden müssen. 

Durch die Nutzung wenn Mit Anweisungen, die sowohl Vergleichsoperatoren als auch logische Operatoren enthalten, können wir Code einrichten, der ausgeführt wird, wenn eine bestimmte Kombination von Bedingungen erfüllt ist. Wir möchten nicht immer die gesamte Bedingung testen, um einen Satz von Anweisungen auszuführen, wenn der gesamte Test wahr ist, und einen anderen, wenn er falsch ist. Wir möchten möglicherweise zwischen mehreren verschiedenen Aussagen wählen, je nachdem, welche bestimmte Kombination von Bedingungen zutrifft.

Nehmen wir zum Beispiel an, wir müssen drei Werte vergleichen und möchten unterschiedliche Ergebnisse einstellen, je nachdem, welche der Werte gleich sind. Das folgende Beispiel zeigt, wie wir verschachteln können wenn Anweisungen zum Testen (in Fettdruck unten)

var answer;

if (a == b) 

  if (a == c) 

    answer = "alle sind gleich";
   else
    answer = "a und b sind gleich";

 else 

  if (a == c) 

    answer = "a und c sind gleich";

   else 

    if (b == c) 

      answer = "b und c sind gleich";
     else
      answer = "alle sind anders";

  


Die Logik funktioniert hier wie folgt:

  1. Wenn die erste Bedingung erfüllt ist (
    if (a == b)
    ), dann sucht das Programm nach dem verschachtelt wenn Bedingung (
    if (a == c)
    ). Wenn die erste Bedingung falsch ist, springt das Programm zum sonst Bedingung.
  2. Wenn die verschachtelt wenn ist wahr, wird die Anweisung ausgeführt, d. h. "alle sind gleich".
  3. Wenn die verschachtelt wenn ist falsch, dann ist die sonst Anweisung wird ausgeführt, d. h. "a und b sind gleich".

Hier sind einige Dinge zu beachten, wie dies codiert ist:

  • Zuerst haben wir die Variable erstellt Antworten um das Ergebnis festzuhalten, bevor wir mit der Arbeit begannen wenn Anweisung, die Variable global zu machen. Ohne das hätten wir die Variable vor allen Zuweisungsanweisungen einfügen müssen, da es sich um eine lokale Variable handelt.
  • Zweitens haben wir jedes verschachtelte Objekt eingerückt wenn Erklärung. Auf diese Weise können wir leichter nachverfolgen, wie viele verschachtelte Ebenen von Anweisungen vorhanden sind. Es wird auch klarer, dass wir die richtige Anzahl von Codeblöcken geschlossen haben, um alle zu vervollständigen wenn Aussagen, die wir geöffnet haben. Sie werden vielleicht feststellen, dass es einfacher ist, die Zahnspangen dort zuerst zu setzen wenn Anweisung, bevor Sie den Code schreiben, der in diesen Block gehört.

Wir können einen Abschnitt dieses Codes leicht vereinfachen, um zu vermeiden, dass der Code verschachtelt wird wenn Aussagen ganz so viel. Wo ein ganzes sonst blockieren besteht aus einem einzigen wenn Aussage können wir die Klammern um diesen Block weglassen und die wenn konditionieren sich auf die gleiche Linie wie die sonst, unter Verwendung der Bedingung "else if". Beispielsweise:

var answer;

if (a == b) 

  if (a == c) 

    answer = "alle sind gleich";

   else 

    answer = "a und b sind gleich";

  

 sonst wenn (a == c) 

  answer = "a und c sind gleich";
else if (b == c)
  answer = "b und c sind gleich";
 else 

  answer = "alle sind anders";


Verschachtelt wenn, dann Anweisungen sind in allen Programmiersprachen gleich, nicht nur in JavaScript. Anfängerprogrammierer verwenden oft mehrere wenn, dann oder ansonsten Anweisungen, anstatt sie zu verschachteln. Während diese Art von Code funktioniert, wird er schnell ausführlich und dupliziert Bedingungen. Das Verschachteln von bedingten Anweisungen schafft mehr Klarheit in Bezug auf die Programmlogik und führt zu präzisem Code, der möglicherweise schneller ausgeführt oder kompiliert wird.