[Javascript]Optional Chain (신문법)

코드왕·2022년 7월 6일
0
post-thumbnail
post-custom-banner

일반적인 경우에 '.'은 객체의 key값을 찾을 때 사용한다.

let user = {}; // 주소 정보가 없는 사용자
alert(user.address.street); // TypeError: Cannot read property 'street' of undefined

위의 상황을 개선하기 위해서 아래와 같이 && 기호를 종종 사용하기도 한다.

let user = {}; // 주소 정보가 없는 사용자
alert( user && user.address && user.address.street ); // undefined, 에러가 발생하지 않습니다.

옵셔널 체인을 써보자!

let user = {}; // 주소 정보가 없는 사용자
alert( user?.address?.street ); // undefined, 에러가 발생하지 않습니다.

하지만, 존재 하지 않아도 괜찮은 대상에만 사용해야 한다!

위의 경우는 user는 반드시 존재하고 address나 street은 존재할수도 있고 아닐 수도 있는 대상이라 옵셔널 체인을 사용했다. 하지만 필수로 존재해야하는 값에 옵셔널 체인을 쓰면 후속 코드에 영향을 주므로 남용해선 안된다.

profile
CODE DIVE!
post-custom-banner

0개의 댓글