728x90
목차
- 동등 연산자란?
- 느슨한 동등 (==)
- 엄격한 동등 (===)
- 비교 요약
- 사용 시 주의사항
- 정리
1. 동등 연산자란?
자바스크립트에서 동등 연산자는 두 값을 비교하여 동등 여부를 확인하는데 사용됩니다. 두 가지 주요 연산자가 있습니다:
- ==: 느슨한 동등 연산자
- ===: 엄격한 동등 연산자
각 연산자는 비교 방식과 결과가 다르며, 자세한 설명은 아래에서 확인하세요.
2. 느슨한 동등 (==)
==는 타입 변환을 수행하여 두 값의 내용만 비교합니다.
특징
- 두 값의 타입이 다를 경우, 자바스크립트가 암묵적으로 타입을 변환한 뒤 비교합니다.
- 비교 결과가 직관적이지 않을 수 있습니다.
예제
console.log(5 == "5"); // true (문자열 "5"가 숫자 5로 변환되어 비교됨)
console.log(false == 0); // true (false가 숫자 0으로 변환됨)
console.log(null == undefined); // true (특별한 규칙으로 서로 동등하게 간주됨)
3. 엄격한 동등 (===)
===는 타입 변환을 수행하지 않으며, 두 값의 타입과 값이 모두 동일한 경우에만 true를 반환합니다.
특징
- 타입과 값이 모두 일치해야만 true를 반환합니다.
- 기본적으로 안전하고 예측 가능한 결과를 제공합니다.
예제
console.log(5 === "5"); // false (타입이 다름: 숫자와 문자열)
console.log(false === 0); // false (타입이 다름: boolean과 숫자)
console.log(null === undefined); // false (타입이 다름)
4. 비교 요약
특징 | 특징느슨한 동등 (==) | 엄격한 동등 (===) |
타입 체크 여부 | 없음 | 있음 |
암묵적 타입 변환 | 있음 | 없음 |
값과 타입 비교 | 값만 비교 | 값과 타입 모두 비교 |
예제 결과 | 5 == "5" → true | 5 === "5" → false |
5. 사용 시 주의사항
- 타입 변환 문제:
- ==는 타입 변환을 수행하므로 예상치 못한 결과를 반환할 수 있습니다. 따라서 기본적으로 ===를 사용하는 것이 더 안전합니다.
- 특별한 경우 (null과 undefined):
- null == undefined는 true를 반환하지만, null === undefined는 false를 반환합니다. 이러한 특별 규칙을 알고 있어야 실수를 방지할 수 있습니다.
6. 정리
- == (느슨한 동등): 타입 변환을 수행하여 값만 비교하므로 예기치 않은 결과를 초래할 수 있습니다.
- === (엄격한 동등): 타입과 값을 모두 비교하므로 더욱 안전하며, 자바스크립트에서 비교 연산 시 기본적으로 사용하는 것이 좋습니다.
728x90
'프로그래밍 > javascript' 카테고리의 다른 글
고차 함수(Higher-Order Function) (0) | 2025.04.14 |
---|---|
패키지 관리 도구 정리 및 비교 (npm / npx / yarn / pnpm / bower) (0) | 2025.04.11 |
타입스크립트 정리 (0) | 2025.03.24 |
postman Pre-request script (0) | 2022.10.24 |
Vue.js 환경설정 (0) | 2021.12.09 |