논리 NOT 연산자란?
자바스크립트의 논리 NOT 연산자(!)는 피연산자의 불리언 값을 반전시키는 단항 연산자입니다. 즉, 참(true)인 값은 거짓(false)으로, 거짓인 값은 참으로 바꿔 반환합니다.
예를 들어 어떤 조건식이 true로 평가되면, 그 앞에 !를 붙이면 결과가 false가 됩니다. 반대로 조건식이 false라면 !를 붙였을 때 true가 반환됩니다.
예제 코드
<html>
<body>
<p id="logical"></p>
<script>
var x = 200;
var y = 300;
document.getElementById("logical").innerHTML =
!(x < y) + "<br>" + !(x > y);
</script>
</body>
</html>실행 결과
false true
결과 분석
위 예제에서 변수 x는 200, y는 300입니다.
첫 번째 식 !(x < y): x < y, 즉 200이 300보다 작으므로 이 조건은 true입니다. 여기에 NOT 연산자를 적용하면 값이 반전되어 최종 결과는 false가 됩니다.
두 번째 식 !(x > y): x > y, 즉 200이 300보다 크지 않으므로 이 조건은 false입니다. NOT 연산자가 적용되어 최종 결과는 true가 됩니다.
NOT 연산자 활용 팁
논리 NOT 연산자는 단순한 값 반전 외에도 다양하게 활용됩니다. !!처럼 두 번 사용하면 임의의 값을 불리언 타입으로 명시적으로 변환할 수 있으며, 조건문에서 특정 상태의 반대 경우를 간결하게 검사할 때도 유용합니다.