test
Home IT/WEB !! 연산자 not not 연산자

[javascript]!! 연산자 not not 연산자

“!!” 연산자는 값을 boolean으로 형변환하는 데 사용됩니다. 이를 “not not” 연산자라고도 합니다. 이 연산자는 값을 true 또는 false로 간단히 변환하여 반환합니다.

inline ad

예를 들어, JavaScript에서 다음과 같은 값을 boolean으로 형변환 할 수 있습니다.

!!0 // false
!!1 // true
!!"" // false
!!"hello" // true
!!null // false
!!undefined // false
!!NaN // false
!![] // true
!!{} // true

첫 번째 “!” 연산자는 값을 논리적으로 부정하고, 두 번째 “!” 연산자는 부정된 값을 다시 부정하여 boolean 값을 반환합니다. 따라서 위의 코드에서 0, “”, null, undefined, NaN 값은 false로 변환되고, 모든 객체와 빈 배열은 true로 변환됩니다.

이 연산자는 일반적으로 값이 존재하는지 여부를 확인하거나, 변수 또는 매개 변수가 null 또는 undefined인지 여부를 확인할 때 사용됩니다. 예를 들어, 다음과 같이 값이 존재하는지 확인할 수 있습니다.

let myValue = "";
if (!!myValue) {
  console.log("myValue has a value");
} else {
  console.log("myValue is empty");
}

이 코드는 myValue가 값이 있으면 “myValue has a value”를 출력하고, 그렇지 않으면 “myValue is empty”를 출력합니다.

아래 코드를 리펙토링해보았습니다. if else 문 없이 !! 연산자로 코드를 심플하게 작성할 수 있습니다.

if (value) {
  this.$emit('changeState', true)
} else {
  this.$emit('changeState', false)
}

this.$emit('changeState', !!value)

RECENT POSTS

개미를 퇴치하는 자연적인 방법 중 가장 효과적인 방법 6가지

개미를 자연스럽게 퇴치하는 여러 가지 방법 중 가장 효과적인 몇 가지 방법을 소개하겠습니다. 이 방법들은 모두 집에서 쉽게 구할 수 있는 재료를 사용하여 개미를...

부심장을 지키는 올바른 식단: 먹으면 좋은 음식과 나쁜 음식

부정맥 환자는 심장 건강을 유지하고 증상을 관리하기 위해 특정 음식을 피하고, 심장 건강에 좋은 음식을 섭취하는 것이 중요합니다. 다음은 부정맥 환자가 피해야 나쁜 음식과...

부정맥 arrhythmia: 정의, 원인, 증상, 진단 및 검사, 치료 방법, 예방 방법, 주의사항, 생활 습관

정의 부정맥(Arrhythmia)은 심장의 정상적인 리듬이 불규칙해지거나 비정상적으로 빨라지거나 느려지는 상태를 말합니다. 이는 심장의 전기적 신호 전달에 문제가 생겨 발생하며, 다양한 원인과 증상을 가지고 있습니다. 원인 부정맥의 원인은...

폐렴 pneumonia: 정의, 원인, 증상, 진단 및 검사, 치료 방법, 예방 방법, 주의사항, 생활 습관

정의 폐렴(Pneumonia)은 폐의 폐포(air sacs)에 염증이 생겨 액체나 고름이 차는 질환입니다. 주로 세균, 바이러스, 곰팡이 등의 감염에 의해 발생하며, 심한 경우 생명을 위협할 수 있습니다. 원인 폐렴의...