Programming Language/🟨 Javascript
Optional chaining + ECMAScript, TC39, stage
DarrenKwonDev
2020. 4. 22. 02:31
React에서는 종종 다음과 같은 구문을 작성하곤 한다. data가 있으면 data.movie가 있는지 체크하고, 있다면 data.movie.medium_cover_image를, 없으면 "no image"를 출력한다.
{data && data.movie ? data.movie.medium_cover_image : "no image"}
그런데 Optional chaining이 Stage 4가 되면서 CRA 등에서 Optional chaining을 사용할 수 있게 되었습니다.
다음 코드는 data가 있으면 data.movie가 있는지 체크하고 해당 체크를 통과하면 medium...을 출력하라는 명령어이다.
data?.movie?.medium_cover_image
그런데 stage 4가 뭘까?
ECMAScript 언어 표준을 TC39라는 위원회에서 지정한다. 해당 위원회에서 만든 표준의 예시로 ES6, ES9가 있다. 많이 익숙하지 않은가?
그런데 이 ECMAScript 표준에 지정되기 위해서는 5 단계 (stage)를 거쳐야 한다.
0단계: 허수아비 (stage 0: strawman)
1단계: 제안 (stage 1: proposal)
2단계: 초고 (stage 2: draft)
3단계: 후보 (stage 3: candidate)
4단계: 완료됨 (stage 4: finished)
4단계까지 올라온 프로포절은 별다른 이변이 없는 이상 다가오는 새 표준에 포함되어 발표된다
Optional chaining 같은 경우에는 2020년 4월 22일 기준으로 4단계라고 MDN에 표시되어 있다. 사실상 표준인 셈이며 CRA에서 사용할 수 있다는 의미이다.