옵셔널 체이닝(optional chaining) ?.을 사용하면 프로퍼티가 없는 중첩 객체를 에러 없이 안전하게 접근할 수 있습니다.
중첨 객체의 특정 프로퍼티에 접근하기 위해서 보통 AND연산자를 통해 실제 해당 객체 프로퍼티가 있는지 확인하여 사용 했었는데 AND 연산자를 사용하면 코드가 길어진다는 단점이 있어 보완하고자 등장하게 되었다.
?.은 ?. 앞의 평가 대상이 undefined 혹은 null이면 평가를 멈추고 undifined를 반환한다.
옵셔널 체이닝을 남용하지 말라고 경고한다. 이유는 에러를 조기에 발견하지 못하고 디버깅에 어려움이 생길 수 있다고 한다.
'?.'은 변수 앞에 선언 되어 있어야 한다.

위와 같이 fetch 함수를 통해 data를 state에 저장하여 사용하기 때문에 AND 연산자를 사용했지만 앞으로는 옵셔널체이닝(?.)을 활용해야겠다!