==와 ===의 차이가 무엇인가요?

0

기술면접 - JS

목록 보기
6/18

==와 ===의 차이가 무엇인가요?

=====는 자바스크립트에서 사용되는 두 가지 비교 연산자입니다. 이들은 값의 동등성을 비교하는데 사용됩니다. 하지만 =====는 비교하는 방식과 엄격성 측면에서 차이가 있습니다.

== 동등 연산자

  1. == (동등 연산자, Equality Operator):
    • == 연산자는 값을 비교할 때 타입 변환을 수행합니다. 따라서 타입이 다른 두 값의 비교를 할 때 타입 변환이 일어납니다.
    • 타입 변환 규칙에 따라 값이 같은지 비교합니다. 예를 들어, 문자열과 숫자를 비교할 때 숫자로 변환하여 비교합니다.
    • 예시:
      10 == '10'; // true
      true == 1; // true
      null == undefined; // true

=== 일치 연산자

  1. === (일치 연산자, Strict Equality Operator):
    • === 연산자는 값과 타입을 모두 비교합니다. 타입 변환을 수행하지 않고 엄격하게 비교합니다.
    • 비교하는 값의 타입과 값이 정확히 일치하는지 확인합니다.
    • 예시:
      10 === '10'; // false
      true === 1; // false
      null === undefined; // false

=== 연산자는 일치성을 비교하므로 타입 변환에 의해 예상치 못한 결과를 초래할 가능성이 줄어듭니다. 따라서 타입과 값의 정확한 일치성을 확인해야 하는 경우에는 === 연산자를 사용하는 것이 좋습니다. 반면, == 연산자는 타입 변환이 필요한 상황에서 유용하게 사용될 수 있지만, 타입 변환이 발생할 수 있기 때문에 의도하지 않은 결과가 나올 수 있으므로 주의가 필요합니다.

일반적으로는 === 연산자를 사용하여 더 엄격한 비교를 수행하고, 타입 변환이 필요한 경우에는 명시적인 타입 변환 후 비교하는 것이 좋습니다.

profile
지치지 않는 백엔드 개발자 김성주입니다 :)

0개의 댓글

관련 채용 정보