Es gibt zwei Arten von Operatoren: unäre Operatoren und binäre Operatoren. Es gibt unäre Operatoren auf der linken und auf der rechten Seite.
// left-hand unary operators
// <operator> <operand>
// operand is an expression
not (@{LobbyBeacon.endUserIDs._experience.emailid.id}=="example@adobe.com")
// right-hand unary operators
// <operator> <operand>
// operand is an expression
@{LobbyBeacon.endUserIDs._experience.emailid.id} is not null
// binary operators
// <operand1> <operator> <operand2>
// operand is an expression
(@{LobbyBeacon.endUserIDs._experience.emailid.id}=="example1@adobe.com") or (@{LobbyBeacon.endUserIDs._experience.emailid.id}=="example2@adobe.com")
*
) müssen beide Operationsfelder denselben Typ aufweisen, entweder Ganzzahl oder Dezimalzahl. Beispiel:
3.0 * 4.0
3 * 4.0
führt zu einem Fehler<expression1> and <expression2>
Sowohl <Ausdruck1> als auch <Ausdruck2> müssen boolesch sein. Das Ergebnis ist boolesch.
Beispiel:
3.14 > 2 and 3.15 < 1
<expression1> or <expression2>
Sowohl <Ausdruck1> als auch <Ausdruck2> müssen boolesch sein. Das Ergebnis ist boolesch.
Beispiel:
3.14 > 2 or 3.15 < 1
not <expression>
<Ausdruck> muss boolesch sein. Das Ergebnis ist boolesch.
Beispiel:
not 3.15 < 1
<expression> is null
Das Ergebnis ist boolesch.
Beachten Sie, dass null bedeutet, dass der Ausdruck keinen ausgewerteten Wert hat.
Beispiel:
@{BarBeacon.location} is null
<expression> is not null
Das Ergebnis ist boolesch.
Beachten Sie, dass null bedeutet, dass der Ausdruck keinen ausgewerteten Wert hat.
Beispiel:
@{BarBeacon.location} is not null
<expression> has null
<Ausdruck> muss eine Liste sein. Das Ergebnis ist boolesch.
Nützlich, um zu ermitteln, dass eine Liste mindestens einen Nullwert enthält.
Beispiel:
["foo", "bar", null] has null
Gibt „true“ zurück
["foo", "bar", ""] has null
Gibt „false“ zurück, da "" nicht als null betrachtet wird.
<expression1> == <expression2>
Für <expression1> und <expression2> gibt es keine Kontrolle des Datentyps.
Beispiel:
3.14 == 42
"foo" == "bar"
<expression1> != <expression2>
Für <expression1> und <expression2> gibt es keine Kontrolle des Datentyps.
Das Ergebnis ist boolesch.
Beispiel:
3.14 != 42
"foo" != "bar"
<expression1> > <expression2>
Datum/Uhrzeit kann mit Datum/Uhrzeit verglichen werden.
Datum/Uhrzeit ohne Zeitzone kann mit Datum/Uhrzeit ohne Zeitzone verglichen werden.
Sowohl Ganzzahl als auch Dezimalzahl können mit Ganzzahl oder Dezimalzahl verglichen werden.
Jede andere Kombination ist unzulässig.
Das Ergebnis ist boolesch.
Beispiel:
3.14 > 42
<expression1> >= <expression2>
Datum/Uhrzeit kann mit Datum/Uhrzeit verglichen werden.
Datum/Uhrzeit ohne Zeitzone kann mit Datum/Uhrzeit ohne Zeitzone verglichen werden.
Sowohl Ganzzahl als auch Dezimalzahl können mit Ganzzahl oder Dezimalzahl verglichen werden.
Jede andere Kombination ist unzulässig.
Das Ergebnis ist boolesch.
Beispiel:
42 >= 3.14
<expression1> < <expression2>
Datum/Uhrzeit kann mit Datum/Uhrzeit verglichen werden.
Datum/Uhrzeit ohne Zeitzone kann mit Datum/Uhrzeit ohne Zeitzone verglichen werden.
Sowohl Ganzzahl als auch Dezimalzahl können mit Ganzzahl oder Dezimalzahl verglichen werden.
Jede andere Kombination ist unzulässig.
Das Ergebnis ist boolesch.
Beispiel:
42 < 3.14
<expression1> <= <expression2>
Datum/Uhrzeit kann mit Datum/Uhrzeit verglichen werden.
Datum/Uhrzeit ohne Zeitzone kann mit Datum/Uhrzeit ohne Zeitzone verglichen werden.
Sowohl Ganzzahl als auch Dezimalzahl können mit Ganzzahl oder Dezimalzahl verglichen werden.
Jede andere Kombination ist unzulässig.
Das Ergebnis ist boolesch.
Beispiel:
42 <= 3.14
<expression1> + <expression2>
Beide Ausdrücke müssen numerischer Art sein (Ganzzahl oder Dezimalzahl).
Das Ergebnis ist ebenfalls numerisch.
Beispiel:
1 + 2
Gibt 3 zurück
<expression1> - <expression2>
Beide Ausdrücke müssen numerischer Art sein (Ganzzahl oder Dezimalzahl).
Das Ergebnis ist ebenfalls numerisch.
Beispiel:
2 - 1
Gibt 1 zurück
<expression1> / <expression2>
Beide Ausdrücke müssen numerischer Art sein (Ganzzahl oder Dezimalzahl).
Das Ergebnis ist ebenfalls numerisch.
<Ausdruck2> darf nicht gleich 0 sein (gibt 0 zurück).
Beispiel:
4 / 2
Gibt 2 zurück
<expression1> * <expression2>
Beide Ausdrücke müssen numerischer Art sein (Ganzzahl oder Dezimalzahl).
Das Ergebnis ist ebenfalls numerisch.
Beispiel:
3 * 4
Gibt 12 zurück
<expression1> % <expression2>
Beide Ausdrücke müssen numerischer Art sein (Ganzzahl oder Dezimalzahl).
Das Ergebnis ist ebenfalls numerisch.
Beispiel:
3 % 2
Gibt 1 zurück.
<expression> is numeric
Der Typ des Ausdrucks ist Ganzzahl oder Dezimalzahl.
Beispiel:
@ is numeric
<expression> is integer
Der Typ des Ausdrucks ist Ganzzahl.
Beispiel:
@ is integer
<expression> is decimal
Der Typ des Ausdrucks ist Dezimalzahl.
Beispiel:
@ is decimal
<string> + <expression>
<expression> + <string>
Damit werden zwei Ausdrücke verkettet.
Ein Ausdruck muss eine verkettete Zeichenfolge sein.
Beispiel:
"the current time is " + (now())
Gibt „Die aktuelle Zeit lautet 2019-09-23T09:30:06.693Z“ zurück.
(now()) + " is the current time"
Gibt „2019-09-23T09:30:06.693Z ist die aktuelle Zeit“ zurück.
"a" + "b" + "c" + 1234
Gibt „abc1234“ zurück.
<expression> + <duration>
Anhängen einer Dauer an einen „dateTime“, einen „dateTimeOnly“ oder eine Dauer.
Beispiel:
(toDateTime("2011-12-03T15:15:30Z")) + (toDuration("PT15M"))
Gibt den dateTime-Wert 2011-12-03T15:30:30Z zurück.
(toDateTimeOnly("2011-12-03T15:15:30")) + (toDuration("PT15M"))
Gibt den dateTimeOnly-Wert 2011-12-03T15:30:30 zurück.
(now()) + (toDuration("PT1H"))
Gibt einen dateTime-Wert (mit UTC-Zeitzone) eine Stunde später als die aktuelle Zeit zurück.
(toDuration("PT1H")) + (toDuration("PT1H"))
Gibt eine Dauer PT2H zurück.