패스잇
프론트엔드 개발 · 기초

JavaScript의 == 와 ===의 차이점은 무엇인가요?

힌트 · 타입 강제 변환(type coercion)의 동작을 생각해보세요.

동등 연산자엄격한 동등 연산자타입 변환타입 비교값 비교

모범답안

"네, JavaScript에서 =====는 둘 다 동등성을 비교하는 연산자이지만, 중요한 차이점이 있습니다.

==는 '동등 연산자'라고 부르며, 비교하기 전에 필요하다면 타입 변환(type coercion)을 수행합니다. 즉, 두 값의 타입이 다를 경우 JavaScript 엔진이 자동으로 타입을 변환하여 비교합니다. 예를 들어, 1 == "1"true를 반환합니다.

반면에 ===는 '엄격한 동등 연산자'라고 부르며, 타입 변환 없이 값과 타입을 모두 비교합니다. 따라서 1 === "1"false를 반환합니다. 왜냐하면 숫자 1과 문자열 "1"은 타입이 다르기 때문입니다.

일반적으로는 예기치 않은 타입 변환으로 인한 오류를 방지하기 위해 ===를 사용하는 것이 더 안전하고 권장됩니다."

읽었다면, 이제 직접 답해볼 차례예요

패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.

함께 보는 JavaScript 면접 질문

← JavaScript 면접 질문 전체 보기