JavaScript Optional Chaining
The optional chaining operator is a very useful operator which we can use to work with objects and their properties or methods
The optional chaining operator is a very useful operator which we can use to work with objects and their properties or methods.
Have you ever used the && operator as a fallback? It’s one of my favorite JavaScript features.
In JavaScript, you can first check if an object exists, and then try to get one of its properties, like this:
const car = null
const color = car && car.color
Even if car
is null, you don’t have errors and color
is assigned the null
value.
You can go down multiple levels:
const car = {}
const colorName = car && car.color && car.color.name
In some other languages, using &&
might give you true or false, since it’s usually a logic operator.
Not in JavaScript, and it allows us to do some cool things.
Now this new optional chaining operator will let us be even more fancy:
const color = car?.color
const colorName = car?.color?.name
If car
is null
or undefined
, the result will be undefined
.
With no errors (while with && in case car
was undefined
we had a ReferenceError: car is not defined
error)
→ I wrote 17 books to help you become a better developer, download them all at $0 cost by joining my newsletter
→ JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025