Elvis and Safe Navigation Operators in JavaScript
In Java, Elvis (?:) and Safe Navigation (?.) operators provide convenient ways to handle null values and access object properties safely. While JavaScript doesn't offer these exact operators, alternative approaches exist.
Elvis Operator (?:)
To achieve the functionality of the Elvis operator, you can use the logical 'OR' operator (||):
const displayName = user.name || "Anonymous";
Safe Navigation Operator (?.)
JavaScript doesn't currently have an equivalent to the Safe Navigation operator. However, you can use the following pattern instead:
const streetName = user?.address?.street;
If any part of the chain (e.g., user, address, street) is null, streetName will be set to null. This method avoids potential NullPointerExceptions.
Alternative Solutions
If you desire the syntax of Elvis and Safe Navigation operators, consider using CoffeeScript. It offers similar shorthand:
Existential Operator
zip = lottery.drawWinner?().address?.zipcode
Function Shortcuts
() -> // equivalent to function(){}
Sexy Function Calling
func 'arg1', 'arg2' // equivalent to func('arg1', 'arg2')
While CoffeeScript syntax might be more expressive, it requires compilation or insertion as '
Disclaimer: All resources provided are partly from the Internet. If there is any infringement of your copyright or other rights and interests, please explain the detailed reasons and provide proof of copyright or rights and interests and then send it to the email: [email protected] We will handle it for you as soon as possible.
Copyright© 2022 湘ICP备2022001581号-3