과 == 의 차이점은 무엇인가요?
15 조회수
이런 질문도 있으신가요?더 많이
자바스크립트에서 ==와 === 연산자는 값의 동일성을 비교하는 데 사용되지만 엄격성 수준이 다릅니다.
== 연산자 (일반 등가 연산자)
== 연산자는 피연산자의 값이 동일한지 확인합니다. 자동 형 변환을 수행하며 다음과 같은 규칙을 따릅니다.
- 두 피연산자가 모두 숫자이면 숫자로 비교됩니다.
- 한 피연산자가 숫자이고 다른 피연산자가 문자열이면 문자열로 변환된 숫자로 비교됩니다.
- 한 피연산자가 불리언이고 다른 피연산자가 숫자이면 숫자로 변환된 불리언으로 비교됩니다.
- 논리 연산자인 &&와 ||은 불리언으로 변환된 피연산자로 비교됩니다.
예:
1 == "1" // true
0 == false // true
null == undefined // true
=== 연산자 (엄격한 등가 연산자)
=== 연산자는 피연산자의 값과 데이터 유형이 모두 동일한지 확인합니다. 자동 형 변환을 수행하지 않으며 다음과 같은 규칙을 따릅니다.
- 두 피연산자가 모두 숫자이면 숫자로 비교됩니다.
- 한 피연산자가 숫자이고 다른 피연산자가 문자열이면 false를 반환합니다.
- 한 피연산자가 불리언이고 다른 피연산자가 숫자이면 false를 반환합니다.
- 논리 연산자인 &&와 ||은 불리언으로 변환되지 않고 원래 데이터 유형으로 비교됩니다.
예:
1 === "1" // false
0 === false // false
null === undefined // false
요약
| 연산자 | 자동 형 변환 | 데이터 유형 비교 |
|---|---|---|
| == | true | false |
| === | false | true |
따라서 == 연산자는 값이 동일하면 true를 반환하는 일반적인 비교 연산자이지만, === 연산자는 값과 데이터 유형이 모두 동일하면 true를 반환하는 엄격한 비교 연산자입니다. 코드에서 엄격한 비교가 필요한 경우에는 === 연산자를 사용하는 것이 좋습니다.
가장 좋아하는
답변에 대한 의견:
의견을 주셔서 감사합니다! 여러분의 의견은 향후 답변을 개선하는 데 매우 중요합니다.