로딩
요청 처리 중입니다...

[JavaScript]'?.' 옵셔널 체이닝이란 무엇일까

 [JavaScript]'?.' 옵셔널 체이닝이란 무엇일까

요즘 리액트를 공부하면서 제일 많이 보이는 옵셔널 체이닝(?.) 옵셔널 체이닝이란 무엇일까?

옵셔널 체이닝이란 접근하고자 하는 Key의 값이 유효한지 아닌지를 직접 명시하지 않아도 확인할 수 있는 연산자이다. 코딩을 하다보면 객체로 접근을 해야하는 경우가 상당히 많은데 객체에 접근했을 때 객체 값이 Null이면 에러를 뱉어내지 않고 undefined를 뱉어내게 해준다.

쉽게 설명하면 아래 그림처럼 평가하고자 하는 대상이 Null값이면 에러를 뱉게 된다 jh객체 안에는 보다시피 score가 없다. 그래서 console.log로 찍어보면 에러를 뱉어내는 걸 볼 수가 있다.

이럴 때 옵셔널 체이닝(?.) 연산자를 써주면 에러 대신 undefined를 반환해줄 수 있다.

이렇게 객체 앞에 접근할 때 보통 . 을 붙여서 접근을 하게 되는데 앞에 ?

연산자를 붙여서 Null 대신 undefined를 반환해준다. 옵셔널 체이닝을 삼항연산자와도 이어서 쓸 수가 있는데 나름 유용하게 쓰일 거 같다....

# ECMAScript # es6 # 리액트 # 리액트옵셔널체이닝 # 삼항연산자 # 옵셔널체이닝 # 자바스크립트