옵셔널 체이닝 ?.
을 사용하면 프로퍼티가 없는 중첩 객체에 에러 없이 안전하게 접근할 수 있다.
?.
은 앞의 평가 대상이 undefined나 null이면 평가를 멈추고 undefined를 반환한다.
옵셔널 체이닝은 존재하지 않아도 괜찮은 대상에만 사용해야 한다는 것에 유의해야 한다. 또한, ?.
은 선언이 완료된 변수를 대상으로만 동작한다.
let user = {};
alert( user?.address?.street); // undefined. 에러 노발생