프론트엔드 개발 · 기초
JavaScript의 == 와 ===의 차이점은 무엇인가요?
힌트 · 타입 강제 변환(type coercion)의 동작을 생각해보세요.
동등 연산자엄격한 동등 연산자타입 변환타입 비교값 비교
모범답안
"네, JavaScript에서 ==와 ===는 둘 다 동등성을 비교하는 연산자이지만, 중요한 차이점이 있습니다.
==는 '동등 연산자'라고 부르며, 비교하기 전에 필요하다면 타입 변환(type coercion)을 수행합니다. 즉, 두 값의 타입이 다를 경우 JavaScript 엔진이 자동으로 타입을 변환하여 비교합니다. 예를 들어, 1 == "1"은 true를 반환합니다.
반면에 ===는 '엄격한 동등 연산자'라고 부르며, 타입 변환 없이 값과 타입을 모두 비교합니다. 따라서 1 === "1"은 false를 반환합니다. 왜냐하면 숫자 1과 문자열 "1"은 타입이 다르기 때문입니다.
일반적으로는 예기치 않은 타입 변환으로 인한 오류를 방지하기 위해 ===를 사용하는 것이 더 안전하고 권장됩니다."
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.