자바스크립트에서 부정 연산자는 !
기호로 표현됩니다. 이 연산자는 불리언(Boolean) 값을 반전시킵니다. 즉, true
는 false
로, false
는 true
로 변환됩니다.
부정 연산자는 자주 사용되며, 조건문, 반복문, 함수 등에서 조건의 부정을 표현하는데 유용합니다.
부정 연산자의 사용 예시
조건문에서의 부정 연산자 사용
let isLogged = false;
if (!isLogged) {
console.log("로그인이 되지 않았습니다.");
}
위의 예제에서 isLogged
변수의 값이 false
이므로, 부정 연산자 !
를 사용하여 if
문 내의 조건이 true
가 되어 console.log
문이 실행됩니다.
반복문에서의 부정 연산자 사용
let numbers = [1, 2, 3, 4, 5];
let evenNumbers = [];
for (let i = 0; i < numbers.length; i++) {
if (numbers[i] % 2 !== 0) {
evenNumbers.push(numbers[i]);
}
}
console.log(evenNumbers);
위의 예제는 배열 numbers
에서 홀수를 필터링하여 evenNumbers
배열에 저장하는 코드입니다. numbers[i] % 2 !== 0
라는 조건은 숫자가 홀수인지를 확인하는데, 여기서 !==
연산자를 사용하여 부정 연산을 수행합니다.
함수에서의 부정 연산자 사용
function isAdult(age) {
return age >= 18 ? true : false;
}
function isNotAdult(age) {
return !isAdult(age);
}
console.log(isNotAdult(20)); // false
console.log(isNotAdult(15)); // true
위의 예제는 isAdult
함수를 통해 나이가 성인인지를 확인합니다. isNotAdult
함수는 isAdult
함수의 반대 값을 반환하기 위해 부정 연산자 !
를 사용합니다.
주의사항
부정 연산자는 반대의 결과를 돌려주는 것이기 때문에 주의가 필요합니다. 0, 빈 문자열, null
, undefined
, NaN
과 같은 falsy한 값은 !
연산자를 사용하면 true
로 변환됩니다. 따라서, 부정 연산자를 사용할 때 주의하여 원하는 결과값을 얻을 수 있도록 해야 합니다.
// 빈 문자열은 falsy한 값이기 때문에 ! 연산자를 사용하면 true로 변환됨
console.log(!""); // true
// 숫자 0은 falsy한 값이기 때문에 ! 연산자를 사용하면 true로 변환됨
console.log(!0); // true
// null은 falsy한 값이기 때문에 ! 연산자를 사용하면 true로 변환됨
console.log(!null); // true
// undefined는 falsy한 값이기 때문에 ! 연산자를 사용하면 true로 변환됨
console.log(!undefined); // true
// 숫자 NaN은 falsy한 값이기 때문에 ! 연산자를 사용하면 true로 변환됨
console.log(!NaN); // true
결론
자바스크립트의 부정 연산자인 !
은 불리언 값을 반전시키는 유용한 연산자입니다. 조건문, 반복문, 함수 등에서 조건의 부정을 표현할 때 사용하면 코드의 가독성을 높여줍니다. 단, 부정 연산자를 사용할 때는 주의하여 원하는 결과값을 얻을 수 있도록 해야 합니다.