“!!” 연산자는 값을 boolean으로 형변환하는 데 사용됩니다. 이를 “not not” 연산자라고도 합니다. 이 연산자는 값을 true 또는 false로 간단히 변환하여 반환합니다.
예를 들어, 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)![[javascript]객체의 키 중에서 숫자 타입의 값을 필터링하고 합산 javascript](https://markettraders.kr/wp-content/uploads/2021/12/javascript-218x150.jpg)













![[광주]위파크 더 센트럴 분양주택 분양안내](https://markettraders.kr/wp-content/uploads/2023/08/2023000351-218x150.png)
![[강원]힐스테이트 속초 분양주택 분양안내](https://markettraders.kr/wp-content/uploads/2023/08/20230707051118016175-218x150.jpg)
![[강원]e편한세상 원주 프리모원(1회차) 분양주택 분양안내](https://markettraders.kr/wp-content/uploads/2023/08/2023000284-218x150.jpg)
![[서울]수유 시그니티 분양주택 분양안내](https://markettraders.kr/wp-content/uploads/2023/08/apartment-218x150.jpg)
![[경기]광명 센트럴 아이파크 분양주택 분양안내](https://markettraders.kr/wp-content/uploads/2023/08/2023000303-218x150.jpg)
