코린이 개념잡기/JavaScript
==와 ===의 차이
폭주하는 세발자전거
2024. 12. 20. 22:41
자바스크립트에서 ==와 ===는 두 값을 비교하는 연산자이지만, 그 동작 방식에는 차이가 있다.
==(동등 연산자)
값이 같은지를 비교한다. 이 때, 타입 변환(type coercion)이 발생할 수도 있는데, 서로 다른 타입의 값이 비교될 때 자바스크립트가 자동으로 타입을 변환하여 비교한다는 뜻이다.
console.log(5 == '5'); // true (문자열 '5'가 숫자 5로 변환됨)
console.log(0 == false); // true (false가 0으로 변환됨)
console.log(null == undefined); // true (null과 undefined는 동등로 간주됨)
===(일치 연산자)
값과 타입이 모두 같은지를 비교한다. 타입 변환이 이루어지지 않으며, 두 값이 완전히 동일해야 true를 반환한다.
console.log(5 === '5'); // false (타입이 다름)
console.log(0 === false); // false (타입이 다름)
console.log(null === undefined); // false (타입이 다름)
자바스크립트에서는 ===을 사용하는 것이 더 안전하고 예측 가능한 결과를 제공한다.