null coalescing on nested object js

JavaScript
// Have you used this?
if (response.data && response.data.temperature) {
  highTemperature = response.data.temperature.high;
}

// Optional chaining provides a terse alternative. 
// This is JavaScript’s version of the 'safe navigation' operator

const highTemperature = response.data?.temperature?.high;

// In addition to accessing nested values, 
// another common pattern in JavaScript is to use the logical OR operator (||) 
// to coalesce values because it returns the first truthy operand, not a Boolean.
const defaultTime = 2;
const animationTime = settings.animationTime || defaultTime; 
// if animationTime is set to 0 --> 0 is falsy, so will result in default time 2 instead of 0

const animationTime = settings.animationTime ?? defaultTime;
// ?? only rejects values if they are strictly null or undefined
Source

Also in JavaScript: