LANGUAGE/JAVASCRIPT

Javascript 문자열 비교 ( ==와 === 차이)

옐옐루 2023. 8. 24. 13:02

'==' 와 '==='는 자바스크립트에서 사용되는 비교 연산자로, 두 값이 같은지 비교하는 역할을 함

하지만 그 동작 방식과 결과가 다르며 주로 두가지 측면에서 차이가 있음

데이터 형식의 비교와 형 변환의 여부

 

1. 데이터 형식의 비교 

 

 [ == ]

 동등 비교 연산자로, 두 값이 같은 값이라면 true 반환. 데이터 형식이 다르더라도 자동으로 형 변환이 일어나서 비교

 이때 형 변환에 의해 값의 비교가 이루어지므로 예상치 못한 결과가 발생할 수 있음. 

 예를 들어 문자열과 숫자를 비교할 때 문자열이 숫자로 형 변환 되어 비교됨 

 

 [ === ] 

 일치 비교 연산자로, 두 값이 정확히 같은 값이고, 같은 데이터 형식일 때만 true 반환.

 형 변환이 일어나지 않으므로 데이터 형식까지 엄격하게 비교

 

2. 형 변환의 여부 

 

 [ == ]

 형 변환이 자동으로 일어나므로, 서로 다른 데이터 형식을 가지는 값들 간에도 비교가 가능

 예를 들어 문자열과 숫자를 비교할 때 하나의 값이 다른 데이터 형식으로 변환되어 비교

 

 [ === ]

  엄격한 비교로 형 변환이 일어나지 않음. 두 값의 데이터 형식이 정확하게 일치해야만 true 반환 

 

예시

 

따라서 값을 비교할 때는 엄격한 비교를 위해 ' === ' 을 사용하는 것이 권장되며,

데이터 형식 변환이 필요한 상황에서만 ' == ' 을 사용하는 것이 좋음.

반응형