[TIL] Optional Chaining ?.

j1_0·2023년 1월 11일
0

Day 51 <Optional Chaining>

OPTIONAL CHAINING

Optional Chaining 은 const name = person ?. name 일 때 person이 undefined 나 null 이면 undefiend를 반환하고 그렇지 않으면 person.name을 반환한다. (?.앞의 평가 대상이 undefined나 null이면 평가를 멈추고 undefined를 반환한다.)

위 코드에서 word가 값이 있으면 filter를 실행하고 값이 없으면 undefined에 filter를 하려고 했기 때문에 오류가 났다.

Optional chaining을 사용해서 word가 undefined 이면 filter를 실행하지 않게 해서 오류가 나지 않도록 만들어주었다. Word의 값을 할당해 주기 전에 word를 filter를 실행시키지않기 위해 optional chaining을 사용한 것이다.

결국 실행은 잘 되었고 정확한 이유는 아직도 모르겠다. 
그래서 optional chaining을 남용하는것은 디버깅을 어렵게해서 위험하다고 한다. 

0개의 댓글