인프런 커뮤니티 질문&답변
단축 평가 (short circuit evaluation) 패턴 관련 질문있습니다.
작성
·
196
0
안녕하세요, 알찬 수업 무료로 열어주셔서 감사한 마음으로 배우고 있습니다.이번 강의에서 단축 평가 패턴에 대해 알려주셨습니다.제가 기존에 이해하고 있던 단축 평가 패턴은,
- false && ... 은 항상 false 이므로 ... 에 대한 확인은 하지 않는다
- true || ... 은 항상 true 이므로 ... 에 대한 확인은 하지 않는다
- 확인하지 않음으로서 조금의 성능 향상을 얻는다.
답변 1
0
코드팩토리
지식공유자
안녕하세요!
"왜?"라는건 작동 방식에 대한 "왜?" 인걸까요?
아니면 "왜 이런 작동 방식을 알아야하나 또는 사용해야하나"에 대한 질문일까요?
전자는 솔직히 말씀드리면 저도 잘 모르겠습니다. 아마 고의적으로 만들어진 기능이라보단 언어 내부적으로 생겨난 사이드이펙트가 아닐까 생각됩니다.
후자는 많은 사례가 있고 실제로 굉장히 많이 사용합니다. 링크주신 사이트에서도 매우 좋은 설명을 해주고 있는데 제가 대표적으로 많이 사용하는 경우는 null이 될 수 있는 String 값을 여러개 모아서 메세지를 반환할때 사용합니다.
예를들어
let message = error || warning || success;
이런식으로 우선도 순으로 메세지를 반환 받을 수 있습니다.
감사합니다!





