-
Notifications
You must be signed in to change notification settings - Fork 4
Ternary operator
Maxime Labelle edited this page Mar 18, 2023
·
4 revisions
Most languages have support for simple conditions:
if x then y else z
Popular languages also support combining a condition to return a particular value for assignment, using the ternary operator:
x ? y : z
- Does JMESPath support the ternary operator?
- How to assign based on a condition?
JMESPath supports logical operators with
Or Expression ||
and
And Expressions &&
.
JMESPath has a peculiar concept of falsy values. A falsy value corresponds to any of the following conditions:
- Empty list:
[]
- Empty object:
{}
- Empty string:
""
- Boolean False:
false
- Null value:
null
A truthy value corresponds to any value that is not false.
With that in mind, you can emulate the ternary operator like so:
(x && y) || z