공부/이모저모
javascript == 와 === 의 차이
JUNFUTURE
2024. 1. 30. 12:10
JavaScript에서 ==와 ===는 비교 연산자로, 두 값의 동등성을 확인합니다. 하지만 이 둘은 약간의 차이가 있습니다.
- == (동등 연산자):
- ==는 두 값이 동등한지 비교합니다. 하지만 엄격한 타입 검사(strict type checking)를 수행하지 않습니다.
- 이 연산자를 사용할 때 JavaScript는 비교하는 값의 타입을 변환하여 동일한 타입으로 만든 후 비교합니다.
- 예를 들어, 문자열 "1"과 숫자 1은 다른 타입이지만 ==로 비교하면 JavaScript는 문자열 "1"을 숫자 1로 변환하여 동등성을 확인합니다.
- === (일치 연산자):
- ===는 두 값이 정확하게 일치하는지를 비교합니다. 두 값의 타입과 값이 모두 같아야 합니다.
- 타입 변환 없이 엄격한 비교를 수행하기 때문에 타입이 다른 경우에는 일치하지 않습니다.
- 이 연산자는 보다 명시적이며 예상치 못한 결과를 방지할 수 있습니다.
간단한 예시로 비교하면:
console.log(1 == "1"); // true (타입 변환 후 비교)
console.log(1 === "1"); // false (타입이 다름)
따라서 보다 엄격한 비교를 하고자 할 때는 ===를 사용하는 것이 권장됩니다. 일치 연산자를 사용하면 코드의 가독성을 높일 뿐만 아니라 예기치 않은 결과를 방지할 수 있습니다.
따봉 GPT야 고마워