&& 와 || 조건식은 양측의 조건식을 각각 체크하여 AND 혹은 OR 연산을 하게 됩니다. 단, 2 가지 예외의 경우에는, 좌측의 조건식만 체크하고, 우측의 조건식은 건너 뛰게 됩니다.


조건식 1 && 조건식 2

조건식 1 이 false 이면, 조건식 2 를 건너뜀


조건식 1 || 조건식 2

조건식 1 이 true 이면, 조건식 2 를 건너뜀


먼저 && 연산자에서는, 두 조건식이 모두 true 이어야 전체 결과가 true 가 되는데, 좌측 조건식 1 이 false 이면, 우측 조건식 2 를 볼 필요도 없이 어차피 전체 결과가 false 가 되기 때문에 조건식 2 를 체크하지 않고 건너 뛰게 됩니다.


또, || 연산자에서는, 두 조건식 중 하나라도 true 이면 전체 결과가 true 가 되는데, 좌측 조건식 1 이 true 이면, 우측 조건식 2 를 볼 필요도 없이 어차피 전체 결과가 true 가 되기 때문에 조건식 2 를 체크하지 않고 건너 뛰게 됩니다.


이렇게 우측 조건식을 건너 뛰는 것을 Short Circuit Evaluation 이라고 합니다.

by kkikkodev 2015. 9. 9. 16:18