Operadores operators
Existen dos tipos de operadores: operadores unarios y operadores binarios. Hay operadores unarios de la izquierda y operadores unarios de la derecha.
// 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")
Notas importantes important-notes
-
Al utilizar una multiplicación (
*
), ambos campos de operación deben tener el mismo tipo, ya sea entero o decimal. Ejemplo :- el siguiente ejemplo es correcto:
3.0 * 4.0
3 * 4.0
generará un error
- el siguiente ejemplo es correcto:
-
Al utilizar el operador
+
, la expresión debe encapsularse entre paréntesis. Por ejemplo:toDateTimeOnly(toDateTime((currentTimeInMillis()) + 1))
es correctotoDateTimeOnly(toDateTime(currentTimeInMillis() + 1))
generará un error
Lógico logical
y
<expression1> and <expression2>
Tanto <expression1> como <expression2> deben ser booleanas. El resultado es booleano.
Por ejemplo:
3.14 > 2 and 3.15 < 1
o
<expression1> or <expression2>
Tanto <expression1> como <expression2> deben ser booleanas. El resultado es booleano.
Por ejemplo:
3.14 > 2 or 3.15 < 1
no
not <expression>
<expression> debe ser booleano. El resultado es booleano.
Por ejemplo:
not 3.15 < 1
Comparación comparison
es nulo
<expression> is null
El resultado es booleano.
Tenga en cuenta que nulo significa que la expresión no tiene ningún valor evaluado.
Por ejemplo:
@event{BarBeacon.location} is null
no es nulo
<expression> is not null
El resultado es booleano.
Tenga en cuenta que nulo significa que la expresión no tiene ningún valor evaluado.
Por ejemplo:
@event{BarBeacon.location} is not null
tiene null
<expression> has null
<expression> debe ser una lista. El resultado es booleano.
Resulta útil para identificar que una lista contiene al menos un valor nulo.
Por ejemplo:
["foo", "bar", null] has null
Devuelve verdadero
["foo", "bar", ""] has null
Devuelve falso porque "" no se considera nulo.
==
<expression1> == <expression2>
Por ejemplo:
3.14 == 42
"foo" == "bar"
!=
<expression1> != <expression2>
El resultado es booleano.
Por ejemplo:
3.14 != 42
"foo" != "bar"
>
<expression1> > <expression2>
Datetime se puede comparar con Datetime.
Datetimeonly se puede comparar con Datetimeonly.
Tanto el entero como el decimal pueden compararse con ambos valores, entero o decimal.
Cualquier otra combinación está prohibida.
El resultado es booleano.
Por ejemplo:
3.14 > 42
>=
<expression1> >= <expression2>
Datetime se puede comparar con Datetime.
Datetimeonly se puede comparar con Datetimeonly.
Tanto el entero como el decimal pueden compararse con ambos valores, entero o decimal.
Cualquier otra combinación está prohibida.
El resultado es booleano.
Por ejemplo:
42 >= 3.14
<
<expression1> < <expression2>
Datetime se puede comparar con Datetime.
Datetimeonly se puede comparar con Datetimeonly.
Tanto el entero como el decimal pueden compararse con ambos valores, entero o decimal.
Cualquier otra combinación está prohibida.
El resultado es booleano.
Por ejemplo:
42 < 3.14
<=
<expression1> <= <expression2>
Datetime se puede comparar con Datetime.
Datetimeonly se puede comparar con Datetimeonly.
Tanto el entero como el decimal pueden compararse con ambos valores, entero o decimal.
Cualquier otra combinación está prohibida.
El resultado es booleano.
Por ejemplo:
42 <= 3.14
Aritmética arithmetic
+
<expression1> + <expression2>
Ambas expresiones deben ser numéricas (enteras o decimales).
El resultado también es numérico.
Por ejemplo:
1 + 2
Devuelve 3
-
<expression1> - <expression2>
Ambas expresiones deben ser numéricas (enteras o decimales).
El resultado también es numérico.
Por ejemplo:
2 - 1
Devuelve 1
/
<expression1> / <expression2>
Ambas expresiones deben ser numéricas (enteras o decimales).
El resultado también es numérico.
<expression2> no debe ser igual a 0 (devuelve 0).
Por ejemplo:
4 / 2
Devuelve 2
*
<expression1> * <expression2>
Ambas expresiones deben ser numéricas (enteras o decimales).
El resultado también es numérico.
Por ejemplo:
3 * 4
Devuelve 12
%
<expression1> % <expression2>
Ambas expresiones deben ser numéricas (enteras o decimales).
El resultado también es numérico.
Por ejemplo:
3 % 2
Devuelve 1.
Matemáticas math
es numérico
<expression> is numeric
El tipo de expresión es entero o decimal.
Por ejemplo:
@ is numeric
es entero
<expression> is integer
El tipo de expresión es entero.
Por ejemplo:
@ is integer
es decimal
<expression> is decimal
El tipo de expresión es decimal.
Por ejemplo:
@ is decimal
Cadena string
+
<string> + <expression>
<expression> + <string>
Concatena dos expresiones.
Una expresión debe ser una cadena encadenada.
Por ejemplo:
"the current time is " + (now())
Devuelve "la hora actual es 2023-09-23T09:30:06.693Z"
(now()) + " is the current time"
Devuelve "2023-09-23T09:30:06.693Z es la hora actual"
"a" + "b" + "c" + 1234
Devuelve "abc1234".
Fecha date
+
<expression> + <duration>
Anexe una duración a dateTime, dateTimeOnly o duration.
Por ejemplo:
(toDateTime("2023-12-03T15:15:30Z")) + (toDuration("PT15M"))
Devuelve dateTime 2023-12-03T15:30:30Z
(toDateTimeOnly("2023-12-03T15:15:30")) + (toDuration("PT15M"))
Devuelve dateTimeOnly 2023-12-03T15:30:30
(now()) + (toDuration("PT1H"))
Devuelve dateTime (con zona horaria UTC) una hora más tarde de la hora actual
(toDuration("PT1H")) + (toDuration("PT1H"))
Devuelve duration PT2H