일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Express
- es6
- IntelliJ
- R
- GIT
- SSL
- window
- SPC
- 보조정렬
- tomcat
- mybatis
- Java
- mapreduce
- plugin
- NPM
- JavaScript
- Python
- table
- MSSQL
- Eclipse
- 공정능력
- hadoop
- react
- Spring
- vaadin
- xPlatform
- Android
- SQL
- Sqoop
- Kotlin
- Today
- Total
DBILITY
javascript optional chaining , nullish coaleasing 본문
javascript optional chaining , nullish coaleasing
DBILITY 2022. 3. 30. 16:24https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Optional_chaining
react-hook-form v7의 예제를 보니 저런게 있어 그냥 object?.property && "있으면 이거야" 로 이해하였으나, 확실히 알아야 하기에 찾아 봄. object && object.property && "있으면 이거야"와 같긴 한데..object내에 object의 property까지는 에디터에서 warning..Unresolved variable type..이럴때 다음이 있으니. object.property['property']로..에이 모르겠다 이게 추가된 이유군.이건 연산자가 아니다.그리고 short-circuit evaluation은 모두 알고 있다고 생각한다. 단지 착각하는게 문제.
optional chaining ( ?. )은 세 가지 형태로 사용 가능
obj?.prop – obj가 존재하면 obj.prop을 반환, 그렇지 않으면 undefined를 반환
obj?.[prop] – obj가 존재하면 obj[prop]을 반환, 그렇지 않으면 undefined를 반환
obj?.method() – obj가 존재하면 obj.method()를 호출하고, 그렇지 않으면 undefined를 반환
?. 왼쪽 평가 대상이 null이나 undefined인지 확인하고 null이나 undefined가 아니라면 평가를 계속 진행.
?.를 계속 연결해서 체인을 만들면 중첩 프로퍼티들에 안전하게 접근.
?.은 ?.왼쪽 평가대상이 없어도 괜찮은 경우에만 선택적으로 사용해야.
꼭 있어야 하는 값인데 없는 경우에 ?.을 사용하면 프로그래밍 에러를 쉽게 찾을 수 없게 된다.
아래 블로그의 요약내용을 복사했음.
https://ko.javascript.info/optional-chaining
nullish coaleasing operator라고 물음표 두개를 쓰는 것도 있다.
or연산자와 비슷하게 동작하나 왼쪽 값이 null or undefined인 경우만 사용 가능하다.
https://ko.javascript.info/nullish-coalescing-operator
'front-end & ui > javascript' 카테고리의 다른 글
web browser local storage (0) | 2023.06.15 |
---|---|
momentjs weekday timetable calcuration ( 기준일자 이후 요일 기준 시간표 날짜 생성 ) (0) | 2023.02.03 |
javascript Object.assign (0) | 2022.02.15 |
javascript map reduce (0) | 2022.01.05 |
javascript es6 promise (0) | 2021.12.22 |