SWITCH-Anweisung

Eine SWITCH-Anweisung übergibt die Steuerung abhängig vom Wert eines Ausdrucks an eine Gruppe aus einer oder mehreren Regelzuordnungsanweisungen.

Die SWITCH-Anweisung besitzt die folgende Syntax:

switch (expression) {
case "stringliteral":
	rules
case "stringliteral":
	rules
...
default:
	[rules]
}

Der Wert ausdruck kann ein beliebiger gültiger Ausdruck sein. Beispiel:

switch($node) 

Der Wert zeichenfolgeliteral kann ein beliebiger Zeichenfolgewert sein. Beispiel:

case "jupiter":

Sie können mehrere Werte zeichenfolgeliteral durch das Pipe-Symbol (|) getrennt angeben. Beispiel:

case "jupiter" | "mars" | "venus":

Diese Case-Verzweigung wird ausgeführt, wenn der Ausdruck mit einer der angegebenen Zeichenfolgen übereinstimmt.

Die SWITCH-Anweisung testet nur auf exakte Übereinstimmungen. Verwenden Sie nach Möglichkeit immer diese Anweisung anstelle einer IF-Anweisung, da SWITCH-Anweisungen effizienter verarbeitet werden können und daher schneller ausgeführt werden.

Regeln, die im DEFAULT-Fall ('default:') gegeben werden, werden nur ausgeführt, falls kein anderer Fall zutrifft. Jede SWITCH-Anweisung muss eine Standardfallangabe enthalten, auch wenn dieser keine Regeln zugeordnet werden. Es gibt kein Fallthrough von einem Fall zu einem anderen.

Das Verhalten einer BREAK-Anweisung in einem SWITCH-Anweisungsfall ist mit dem Verhalten einer BREAK-Anweisung in einer IF-Anweisung identisch. Wenn sich die SWITCH-Anweisung im Hauptteil einer Schleifenanweisung befindet, verlässt der Prozess die Schleife. Wenn die SWITCH-Anweisung nicht zu einem Schleifenhauptteil gehört, wird die Regelverarbeitung des Ereignisses an diesem Punkt beendet und das Ereignis wird an den ObjectServer gesendet.