어제 오늘 내일

[Javascript] '==' 연산자와 '===' 연산자의 차이점 본문

IT/Javascript

[Javascript] '==' 연산자와 '===' 연산자의 차이점

hi.anna 2020. 7. 12. 14:47

 

 '=='와 '==='의 차이 

 

  • '=='는 비교하는 두 개의 값(피연산자)을 강제로 같은 형으로 변환한 후, 비교를 수행합니다.
    즉, 두 값의 타입이 다르더라도, 형 변환된 값이 같다면 true를 리턴합니다.
  • '==='는 비교하는 두 개의 값(피연산자)의 타입과 값이 모두 같을 경우에만, true를 리턴합니다.

See the Pen 문자열 by anna (@hianna) on CodePen.

위 첫번째 예제에서

숫자 1과 문자열 '1'을 비교하였습니다.

'==' 연산자를 사용하여 비교하면, 두 피연산자의 타입이 달라도 true를 리턴하는 것을 확인할 수 있습니다.

그렇지만, '===' 연산자를 사용하여 비교하면, 둘 다 1이지만, 타입이 다르기 때문에 false를 리턴합니다.

 

두 번째 예제에서는

boolean 값이 false와 숫자 0을 비교하였습니다.

'==' 연산자를 사용하여 비교하면, 숫자 0을 false로 취급하여 true를 리턴합니다.

그러나, '===' 연산자를 사용하여 비교하면, 두 개의 타입이 다르므로 false를 리턴합니다.

 

보통, 정확한 비교를 위해서 '==' 보다는 '===' 연산자를 사용하여 비교하는 것을 추천합니다.

 

다음 포스팅에서는 '=='와 '===' 연산자로

null과 undefined가 어떻게 비교되는지 알아보도록 하겠습니다.

반응형
Comments