Does JavaScript Have Safe Navigation Operator?

The safe navigation operator is simply another name for the optional chaining operator (?.), which was introduced in ES11. It evaluates an expression from left-to-right; when/if the left operand evaluates to a nullish value, it stops the execution of the entire chain and short-circuit evaluates the expression to undefined. This helps avoid having the need to add sequential explicit null-safe checks.

It has the following syntax:

obj.value?.prop
obj.value?.[expr]
obj.array?.[index]
obj.function?.(args)

In JavaScript, you can use optional chaining with:

  • Object properties and methods;
  • Expressions;
  • Arrays;
  • Function calls.

This post was published by Daniyal Hamid. Daniyal currently works as the Head of Engineering in Germany and has 20+ years of experience in software engineering, design and marketing. Please show your love and support by sharing this post.