JavaScript에서 'strict inequality' 연산자로 사용
두 값이 서로 '같지 않음'을 확인할 때 사용
타입(type) 변환이 일어나지 않는다.즉, 두 값의 타입과 값이 모두 같지 않아야 true를 반환
값 비교: 두 연산자의 값이 다를 경우 true를 반환
타입 비교: 두 연산자의 타입이 다를 경우에도 true를 반환
console.log(3 !== 3); // false, 같은 값이며 타입도 같음 console.log(3 !== '3'); // true, 값은 같지만 타입이 다름('number' vs. 'string') console.log(4 !== 3); // true, 값 자체가 다름
!=는 'loose inequality' 연산자로, 값이 다를 때 true를 반환
하지만 타입이 다른 경우
자동으로 타입 변환을 시도하여 값이 같으면 false를 반환
!==는 이러한 타입 변환을 하지 않기 때문에 더 엄격하다
즉, 타입이 다르면 항상 true를 반환
JavaScript에서는 보통 !==와 === (strict equality 연산자)를 사용하는 것이 권장된다.
이 연산자들은 예상치 못한 버그를 방지하기 위해 타입을 명시적으로 확인하기 때문이다.
!=와 ==는 타입 변환으로 인해 때때로 예상치 못한 결과를 초래할 수 있다.
!== 연산자는 JavaScript에서 값과 타입의 정확한 비교를 수행하는 데 중요한 도구