Operatoren

Berechnen, Vergleichen und logische Auswertungen in Dynamic Expressions meistern.

Operatoren sind grundlegende Bausteine in Dynamic Expressions. Sie ermöglichen Berechnungen, Vergleiche und logische Auswertungen. Mithilfe dieser Symbole kann Ihr Workspace Daten verarbeiten, Entscheidungen treffen und interaktive Inhalte erstellen.

Arithmetische Operatoren‍

Führen Sie grundlegende mathematische Operationen aus.

  • + (Addition): Addiert zwei Zahlen oder verkettet Textzeichenfolgen.
    • Beispiel: {{ 2 + 3 }} → 5
    • Beispiel: {{ "Hello, " + sessionUser.name }} → Hallo, John
  • - (Subtraktion): Subtrahiert eine Zahl von einer anderen.
    • Beispiel: {{ 10 - 4 }} → 6
  • * (Multiplikation): Multipliziert zwei Zahlen.
    • Beispiel: {{ 5 * 3 }} → 15
  • / (Division): Dividiert eine Zahl durch eine andere.
    • Beispiel: {{ 10 / 2 }} → 5
    • Hinweis: Eine Division durch null gibt einen Fehler zurück.
  • % (Rest): Gibt den Rest einer Division zurück.
    • Beispiel: {{ 10 % 3 }} → 1
  • ** (Potenzierung): Potenziert eine Zahl mit einer anderen.
    • Beispiel: {{ 2 ** 3 }} → 8

Vergleichsoperatoren‍

Dienen zum Vergleichen von Werten und geben „true“ oder „false“ zurück.

  • == (Gleichheit): Prüft, ob zwei Werte gleich sind.
    • Beispiel: {{ 2 + 2 == 4 }} → true
  • != (Ungleichheit): Prüft, ob zwei Werte ungleich sind.
    • Beispiel: {{ sessionUser.stats.ideas != 0 }} → true
  • > (Größer als): Prüft, ob der linke Wert größer als der rechte ist.
    • Beispiel: {{ sessionUser.stats.likes > 10 }} → true
  • >= (Größer als oder gleich): Prüft, ob der linke Wert größer als oder gleich dem rechten ist.
    • Beispiel: {{ 5 >= 5 }} → true
  • < (Kleiner als): Prüft, ob der linke Wert kleiner als der rechte ist.
    • Beispiel: {{ 3 < 10 }} → true
  • <= (Kleiner als oder gleich): Prüft, ob der linke Wert kleiner als oder gleich dem rechten ist.
    • Beispiel: {{ sessionUser.stats.ideas <= 20 }} → true

Logische Operatoren

‍Dient zum Verknüpfen mehrerer Bedingungen.

  • && (AND): Gibt true zurück, wenn beide Bedingungen true sind.
    • Beispiel: {{ sessionUser.stats.likes > 10 && sessionUser.stats.ideas > 5 }} → true, wenn beide Bedingungen erfüllt sind.
  • || (OR): Gibt true zurück, wenn mindestens eine Bedingung true ist.
    • Beispiel: {{ sessionUser.rank == 3000 || sessionUser.rank == 5000 }} → true, wenn der Nutzer Admin oder Besitzer ist.
  • ! (NOT): Kehrt den Wahrheitswert einer Bedingung um.
    • Beispiel: {{ !(2 + 2 == 5) }} → true

‍Bedingter Operator

Manchmal möchten Sie abhängig von kontextbezogenen Daten bedingte Zweige Ihrer Formeln ausführen. Zum Beispiel möchten Sie möglicherweise:

  • Je nach Rang des aktuellen Nutzers unterschiedliche Übersetzungsschlüssel in der Beschreibung Ihrer Ideensammlung verwenden.
  • In einer Automatisierungsaktion abhängig davon, ob eine Idee mehr als eine bestimmte Anzahl von Kommentaren hat, unterschiedliche Werte festlegen.

Sie können den bedingten Operator in Ihren dynamischen Ausdrücken verwenden, um dies zu erreichen. Der bedingte Operator ist besonders, da er drei Operanden akzeptiert.

Er hat folgende Struktur: <condition> ? <when-true> : <when-false>

Hier ist ein einfaches Beispiel: {{ sessionUser.stats.likes > 10 ? "Top-contributor" : "Rookie" }}

Sie können in die beiden Zweige des bedingten Operators beliebige Inhalte einfügen, einschließlich benutzerdefinierter Übersetzungsvariablen oder komplexer verschachtelter Formeln.

Beispielsweise möchten Sie möglicherweise je nach Rang des aktuellen Nutzers unterschiedliche benutzerdefinierte Übersetzungsvariablen verwenden:

{{ sessionUser.rank >= 3000 ? (sessionUser.stats.ideas > 20 ? "Super Admin" : "Admin") : "Member" }}

Gruppierungsoperatoren

Dient dazu, die Reihenfolge der Operationen zu steuern, indem Ausdrücke mit Klammern () gruppiert werden.

  • Beispiel: {{ (2 + 3) * 4 }} → 20
  • Ohne Klammern: {{ 2 + 3 * 4 }} → 14
  • Hinweis: Multiplikation hat Vorrang.

Tipps zur Fehlerbehandlung bei Operatoren

  • Division durch null vermeiden: Um Fehler bei der Division durch eine Variable zu vermeiden, die null sein könnte, verwenden Sie eine Fallback-Logik mit Funktionen wie MAX() oder Bedingungen.
    • Beispiel: Verwenden Sie statt {{ 10 / variable }} Folgendes:{{ 10 / MAX(variable, 1) }} — dadurch wird sichergestellt, dass der Divisor mindestens 1 beträgt.
    • Beispiel mit einer Bedingung: {{ variable != 0 ? 10 / variable : "Undefined (Division by zero)" }} — zeigt eine Fallback-Nachricht an, wenn der Divisor null ist.‍
  • Klammern überprüfen: Vergewissern Sie sich, dass Sie alle öffnenden Klammern schließen.
  • Logische Operatoren sorgfältig verwenden: Überprüfen Sie die Bedingungen, um unerwartete Ergebnisse zu vermeiden.

Wenn Sie Operatoren sicher beherrschen, können Sie komplexere und ansprechendere dynamische Ausdrücke erstellen, sodass Ihr Workspace intelligent auf Daten und Nutzerinteraktionen reagieren kann.