Google Classroom
GeoGebraGeoGebra Classroom

10 - Wenn-sonst wenn-dann mit JavaScript

Der Befehl ggbApplet.getValue("Variablenname_in_GeoGebra"); überträgt den in der GeoGebra-Umgebung festgelegten Wert in die JavaScript-Umgebung. Für die Prüfung von mehr als zwei Bedingungen benutzt man eine "wenn-sonst wenn-dann-Anweisung" ("if-else if-else-Anweisung"): if (Bedingung1) { Anweisung1 } else if (Bedingung2) { Anweisung2 } else { Anweisung3 } Die entsprechenden Blöcke sind durch geschweifte Klammern { } getrennt. Es können auch mehrere else if-Blöcke hintereinander gefügt werden. Es können auch mehrere Bedingungen miteinander verknüpft werden:
  • Bedingung1 && Bedingung2 ("Bedingung1 UND Bedingung2") - für die Ausgabe "wahr" müssen beide Bedingungen "wahr" sein.
  • Bedingung1 || Bedingung2 ("Bedingung1 ODER Bedingung2") - für die Ausgabe "wahr" muss eine der beiden Bedingungen "wahr" sein.
  • ! Bedingung1 ("Nicht Bedingung1") - für die Ausgabe "wahr" muss Bedingung1 falsch sein.
Toolbar Image Arbeitsauftrag: Drücke den blauen Button. Aktiviere das Kontrollfeld und drücke erneut den Button.

Einstellung des Buttons

Einstellung des Buttons
Anmerkungen: Der Befehl var a = ggbApplet.getValue("a"); holt sich den Wert der Zahl a aus dem GeoGebra-Applet und speichert ihn in der Skripting-Umgebung. Diese Variable a hat im Beispiel oben nur zwei Werte (boolesche Werte), nämlich wahr|true (Kontrollkästchen aktiviert) und falsch|false (Kontrollkästchen nicht aktiviert). Wenn-dann-Anweisung: if ( (a==true) && (b==true) ) { // "Wenn der Wert von a UND der Wert von b wahr sind, dann ..." alert("Das Kästchen ist aktiviert."); // "... dann gib den Satz aus." } else if ( (a==false) && (b==false) ) {//"Ansonsten wenn der Wert von a UND der Wert von b falsch sind, dann ..." alert("Das Kästchen ist nicht aktiviert."); // "... dann gib den Satz aus." } else { //"Ansonsten - also wenn die Werte von a und b verschieden sind, dann ..." alert("Das Kästchen ist nicht aktiviert."); // "... dann gib den Satz aus." } Je nachdem welche Bedingung wahr ist, wird der entsprechende Block aufgerufen und die Anweisung (hier: die Alert-Ausgabe) ausgeführt. Die Zeile else if ( (a==false) && (b==false) ) { kann äquivalent ersetzt werden durch else if ( (a!=true) && (b!=true) ) {