Je vais vous expliquer par exemple:
Opérateur Elvis (?:)
L '"opérateur Elvis" est un raccourci de l'opérateur ternaire de Java. Un exemple où cela est pratique consiste à renvoyer une valeur «sensible par défaut» si une expression se résout à faux ou null. Un exemple simple pourrait ressembler à ceci:
def gender = user.male ? "male" : "female" //traditional ternary operator usage
def displayName = user.name ?: "Anonymous" //more compact Elvis operator
Opérateur de navigation sécurisée (?.)
L'opérateur de navigation sécurisée est utilisé pour éviter une exception NullPointerException. En règle générale, lorsque vous avez une référence à un objet, vous devrez peut-être vérifier qu'il n'est pas nul avant d'accéder aux méthodes ou aux propriétés de l'objet. Pour éviter cela, l'opérateur de navigation sécurisée retournera simplement null au lieu de lever une exception, comme ceci:
def user = User.find( "admin" ) //this might be null if 'admin' does not exist
def streetName = user?.address?.street //streetName will be null if user or user.address is null - no NPE thrown
??
) en javascript? Tout ce que je trouve jusqu'à présent suggère que JS a seulement une fusion (falsey) (utilisation ||
).