?.는 3가지 형태가 있다.
- obj?.prop는 obj가 존재한다면, obj.prop 존재하지 않으면 undefined
- obj?.[prop]는 obj가 존재한다면, obj.prop 존재하지 않으면 undefined
- obj.method?.()는 obj.method가 존재한다면, obj.method() 존재하지 않으면 undefined
?.는 직관적이고 사용하기 쉽다.
?.는 깊숙한 곳에 있는 프로퍼티에 안전하게 접근할 수 있도록 도와준다.
?.는 꼭 없을 수도 있는 변수에만 사용해야 한다. 프로그래밍적으로 발생하는 에러를 가려버리기 때문에 잘못 사용했을 때는 되려 디버깅하기 어려워질 수 있다.
'Web > Javscript' 카테고리의 다른 글
[Javascript] 자바스크립트 개발자가 알아야 하는 33가지 개념 (0) | 2021.05.30 |
---|