1) || : OR 연산자
다른 프로그래밍 언어들은.. => 하나라도 true라면 true
```
alert( true || true ); // true
alert( false || true ); // true
alert( true || false ); // true
alert( false || false ); // false
```
이 연산은 주어진 조건 중 하나라도 참이 있는지를 테스트합니다.
**||의 역할**
- 변수 또는 표현식으로 구성된 목록에서 첫번째 truthy값 얻기
- 단락 평가
평가를 하면서 truthy를 만나면 나머지 값들은 건드리지 않은 채 평가를 멈춥니다.
2) && : AND 연산자
둘 다 true여야지 true
이 연산은 앞에서부터 false가 처음 발견 되는 순간
결과가 false임을 파악하고 뒤의 식은 확인하지 않음.
&&의 결과값이 false라면 처음으로 falsy 한 값을 반환합니다.
&&의 결과값이 true라면 마지막 피연산자를 반환합니다.
3) ! : NOT 연산자
true 혹은 false값을 반환합니다.
true -> false, fasle -> true로 바뀜
!! : NOT을 연달아서 사용하면 기존 문자열을 불린형을 반환합니다.
부정의 부정은 긍정이므로!
논리 연산자의 우선순위
! > && > ||