비교 연산자 ==와 ===의 차이

kkkkas·2023년 2월 20일
0

==와 ===는 JavaScript에서 비교 연산자입니다.

== 연산자는 두 개의 값을 비교할 때 데이터 타입이 다른 경우, 타입 강제 변환을 통해 비교를 수행합니다. 이러한 동작 방식 때문에 예상치 못한 결과가 발생할 수 있습니다. 예를 들어:

console.log(0 == ""); // true
console.log(1 == "1"); // true
console.log(null == undefined); // true

위 예제에서 0과 빈 문자열 ""은 데이터 타입이 다르지만, == 연산자는 타입 강제 변환을 통해 같다고 판단합니다. 따라서 첫 번째 비교 결과는 true입니다. 마찬가지로, 1과 "1"도 같다고 판단됩니다.

반면 === 연산자는 두 개의 값을 비교할 때 데이터 타입도 함께 비교합니다. 따라서 데이터 타입이 다른 경우에는 항상 false를 반환합니다.

console.log(0 === ""); // false
console.log(1 === "1"); // false
console.log(null === undefined); // false
따라서 가능하면 === 연산자를 사용하는 것이 좋습니다. 타입 강제 변환에 의해 예상치 못한 결과가 발생하지 않고 코드의 가독성을 높여주기 때문입니다.

profile
안녕하세요

0개의 댓글