What is Nullish Coalescing in JavaScript
Nullish Coalescing is an operator introduced in JavaScript ES2020. It is represented by two question marks ??. It is used to provide a default value when the value is null or undefined.
Example
const name = null;
const username = name ?? 'Guest';
console.log(username); // Guest
In the above example, the name variable is null, so the username variable will be assigned the value Guest.
Difference between Nullish Coalescing and Logical OR Operator#
The Nullish Coalescing operator ?? is similar to the Logical OR operator ||, but with a key difference.
The Logical OR operator || will return the right-hand side value if the left-hand side value is falsy: false, 0, ' ', null, undefined, NaN.
const name = '';
const username = name || 'Guest';
console.log(username); // Guest
The Nullish Coalescing operator ?? will return the right-hand side value only if the left-hand side value is null or undefined.
const name = '';
const username = name ?? 'Guest';
console.log(username); // ''
Summary#
- The Nullish Coalescing operator
??is a useful operator in JavaScript to provide a default value when the value isnullorundefined. - It is similar to the Logical OR operator
||, but with a key difference. The Nullish Coalescing operator??will return the right-hand side value only if the left-hand side value isnullorundefined.