Skip to content

JavaScript Nullish Coalescing

New Course Coming Soon:

Get Really Good at Git

An introduction to this feature of JavaScript: nullish coalescing

A powerful operator available in JavaScript is the nullish coalescing operator: ??.

Have you ever used || to set a default value if a variable was null or undefined?

For example, like this:

const myColor = color || 'red'

Well, nullish coalescing is going to replace || in there:

const myColor = color ?? 'red'

Why is this operator useful?

Well, there is a whole range of bugs that hide underneath the surface when using || to provide a fallback value.

In short, || handles values as falsy. ?? handles values as nullish (hence the name).

Which means that with || the second operand is evaluated if the first operand is undefined, null, false, 0, NaN or ''.

?? on the other hand limits this list to only undefined and null.

→ Get my JavaScript Beginner's Handbook
→ Read my JavaScript Tutorials on The Valley of Code
→ Read my TypeScript Tutorial on The Valley of Code

Here is how can I help you: