Operatorer operators
Det finns två typer av operatorer: unära operatorer och binära operatorer. Det finns unära operatorer till vänster och unära operatorer till höger.
// left-hand unary operators
// <operator> <operand>
// operand is an expression
not (@event{LobbyBeacon.endUserIDs._experience.emailid.id}=="example@adobe.com")
// right-hand unary operators
// <operator> <operand>
// operand is an expression
@event{LobbyBeacon.endUserIDs._experience.emailid.id} is not null
// binary operators
// <operand1> <operator> <operand2>
// operand is an expression
(@event{LobbyBeacon.endUserIDs._experience.emailid.id}=="example1@adobe.com") or (@event{LobbyBeacon.endUserIDs._experience.emailid.id}=="example2@adobe.com")
Viktiga anteckningar important-notes
-
När du använder en multiplikation (
*
) måste båda åtgärdsfälten ha samma typ, antingen heltal eller decimal. Exempel:- följande exempel är korrekt:
3.0 * 4.0
3 * 4.0
leder till ett fel
- följande exempel är korrekt:
-
När du använder operatorn
+
måste uttrycket kapslas in mellan parenteser. Exempel:toDateTimeOnly(toDateTime((currentTimeInMillis()) + 1))
är korrekttoDateTimeOnly(toDateTime(currentTimeInMillis() + 1))
leder till ett fel
Logisk logical
och
<expression1> and <expression2>
Både <expression1> och <expression2> måste vara booleska. Resultatet är booleskt.
Exempel:
3.14 > 2 and 3.15 < 1
eller
<expression1> or <expression2>
Både <expression1> och <expression2> måste vara booleska. Resultatet är booleskt.
Exempel:
3.14 > 2 or 3.15 < 1
not
not <expression>
<expression> måste vara booleskt. Resultatet är booleskt.
Exempel:
not 3.15 < 1
Jämförelse comparison
är null
<expression> is null
Resultatet är booleskt.
Observera att null betyder att uttrycket inte har något utvärderat värde.
Exempel:
@event{BarBeacon.location} is null
är inte null
<expression> is not null
Resultatet är booleskt.
Observera att null betyder att uttrycket inte har något utvärderat värde.
Exempel:
@event{BarBeacon.location} is not null
har null
<expression> has null
<expression> måste vara en lista. Resultatet är booleskt.
Användbart för att identifiera att en lista innehåller minst ett null-värde.
Exempel:
["foo", "bar", null] has null
Returnerar sant
["foo", "bar", ""] has null
Returnerar false eftersom "" inte betraktas som null.
==
<expression1> == <expression2>
Exempel:
3.14 == 42
"foo" == "bar"
!=
<expression1> != <expression2>
Resultatet är booleskt.
Exempel:
3.14 != 42
"foo" != "bar"
>
<expression1> > <expression2>
Datetime kan jämföras med Datetime.
Datetimeonly kan jämföras med Datetimeonly.
Både heltal och decimal kan jämföras med både heltal och decimal.
Alla andra kombinationer är förbjudna.
Resultatet är booleskt.
Exempel:
3.14 > 42
>=
<expression1> >= <expression2>
Datetime kan jämföras med Datetime.
Datetimeonly kan jämföras med Datetimeonly.
Både heltal och decimal kan jämföras med både heltal och decimal.
Alla andra kombinationer är förbjudna.
Resultatet är booleskt.
Exempel:
42 >= 3.14
<
<expression1> < <expression2>
Datetime kan jämföras med Datetime.
Datetimeonly kan jämföras med Datetimeonly.
Både heltal och decimal kan jämföras med både heltal och decimal.
Alla andra kombinationer är förbjudna.
Resultatet är booleskt.
Exempel:
42 < 3.14
<=
<expression1> <= <expression2>
Datetime kan jämföras med Datetime.
Datetimeonly kan jämföras med Datetimeonly.
Både heltal och decimal kan jämföras med både heltal och decimal.
Alla andra kombinationer är förbjudna.
Resultatet är booleskt.
Exempel:
42 <= 3.14
Aritmetisk arithmetic
+
<expression1> + <expression2>
Båda uttrycken måste vara numeriska (heltal eller decimal).
Resultatet är också numeriskt.
Exempel:
1 + 2
Returnerar 3
–
<expression1> - <expression2>
Båda uttrycken måste vara numeriska (heltal eller decimal).
Resultatet är också numeriskt.
Exempel:
2 - 1
Returnerar 1
/
<expression1> / <expression2>
Båda uttrycken måste vara numeriska (heltal eller decimal).
Resultatet är också numeriskt.
<expression2> får inte vara lika med 0 (returnerar 0).
Exempel:
4 / 2
Returnerar 2
*
<expression1> * <expression2>
Båda uttrycken måste vara numeriska (heltal eller decimal).
Resultatet är också numeriskt.
Exempel:
3 * 4
Returnerar 12
%
<expression1> % <expression2>
Båda uttrycken måste vara numeriska (heltal eller decimal).
Resultatet är också numeriskt.
Exempel:
3 % 2
Returnerar 1.
Matematik math
är numerisk
<expression> is numeric
Uttryckstypen är heltal eller decimal.
Exempel:
@ is numeric
är heltal
<expression> is integer
Uttryckstypen är ett heltal.
Exempel:
@ is integer
är decimal
<expression> is decimal
Uttryckstypen är decimal.
Exempel:
@ is decimal
Sträng string
+
<string> + <expression>
<expression> + <string>
Det sammanfogar två uttryck.
Ett uttryck måste vara en kedjad sträng.
Exempel:
"the current time is " + (now())
Returnerar "den aktuella tiden är 2023-09-23T09:30:06.693Z"
(now()) + " is the current time"
Returnerar "2023-09-23T09:30:06.693Z är den aktuella tiden"
"a" + "b" + "c" + 1234
Returnerar "abc1234".
Datum date
+
<expression> + <duration>
Lägg till en varaktighet för ett dateTime, ett dateTimeOnly eller en varaktighet.
Exempel:
(toDateTime("2023-12-03T15:15:30Z")) + (toDuration("PT15M"))
Returnerar en dateTime 2023-12-03T15:30:30Z
(toDateTimeOnly("2023-12-03T15:15:30")) + (toDuration("PT15M"))
Returnerar dateTimeOnly 2023-12-03T15:30:30
(now()) + (toDuration("PT1H"))
Returnerar dateTime (med UTC-tidszon) en timme senare från aktuell tid
(toDuration("PT1H")) + (toDuration("PT1H"))
Returnerar en varaktighet PT2H