The Nullish Coalescing Operator (??) is a feature introduced in TypeScript to handle the case of null or undefined values more effectively. It provides a concise way to check if a value is nullish and fallback to a default value if it is.
Example
Consider a scenario where you have an API response that may contain a nullable property. Traditionally, you would use conditional statements or the logical OR operator (||) to assign a default value when the property is null or undefined. However, this approach falls short when the property has a falsy value like an empty string or zero, as these values would be treated as nullish and the default value would be assigned incorrectly.
With the Nullish Coalescing Operator, you can succinctly handle this scenario. Let's say you have an API response object with a nullable name
property. Instead of using conditional statements, you can use the nullish coalescing operator to assign a default name when it is null or undefined:
const name = apiResponse.name ?? "Anonymous";
In this example, if apiResponse.name
is null or undefined, the name
variable will be assigned the value "Anonymous". If apiResponse.name
has any other falsy value, the default value will not be applied.
Conclusion
The Nullish Coalescing Operator is a powerful addition to TypeScript, providing a concise and reliable way to handle nullish values. It simplifies the code and avoids unexpected behavior caused by falsy values. By leveraging this operator, you can write cleaner and more robust code.