Day37 : 옵셔널 체이닝(Optional Chaining)

2024. 2. 14. 01:28Language/JavaScript

옵셔널 체이닝

객체명?.속성 (ex : storageData?.complete)
  • 객체가 undefined이거나 다른 사용할 수 없는 값인 경우에는 뒤 속성을 찾지 않는다.
  • 객체가 실제로 존재할 때만 뒤 속성을 찾는다.

input box에 데이터를 넣으려하자 에러가 난다.

complete라는 속성을 읽을 수 없다는데

 

localStorage에 저장되어 있던 데이터가 아니라 inputbox로 들어오는 데이터의 경우 createTodo 함수를 호출하는 경우 매개변수 없이 호출하기 때문에

storageData가 정의되어있지 않다.

 

그런 상태에서 storageData의 속성 complete을 사용하니 당연히 읽을 수 없다.

 

이럴 때 사용하는게 옵셔널 체이닝(Optional Chaining)이다.

 

 

정상적으로 작동한다.

 

'Language > JavaScript' 카테고리의 다른 글

Day36  (0) 2024.02.02
Day35 : TDZ(Temporal Dead Zone)  (0) 2024.02.02
Day34 : JSON  (0) 2024.02.02
Day32 : querySelectorAll, classList  (0) 2024.02.01
Day31 : createElement, addEventListener  (0) 2024.02.01