[JS] 비교 연산자 ( ==와 ===의 차이)

2025. 1. 21. 18:17·기초 학습/JavaScript

비교 연산자

프로그래밍에서 코드는 입력된 값에 따라 의사 결정을 내리고, 작업을 수행해야 한다. 이러한 의사 결정을 가능하게 하는 게 조건문이다. 조건문에서 사용되는 비교 연산자와 등호 연산자를 공부해보자.

부등호 연산자

비교 연산자는 비교 연산자 양 옆의 두 값(피연산자)을 비교하여 true 또는 false를 반환한다.

  • > : 크다(greater than)
  • <: 작다(less than)
  • >= : 크거나 같다(greater than or equal to)
  • <=: 작거나 같다(less than or equal to)

예제

1 > 2 // false
2 < 8 // false

문자열 비교

이 때 피연산자에는 숫자뿐만 아니라 문자열도 들어갈 수 있다. 문자열이 들어가는 경우, 문자의Unicode 값을 기준으로 판단한다.

'a' < 'b' // true

a와 b는 Unicode 값으로 각각 97과 98이므로 'a' < 'b'는 true가 된다.


등호 연산자

등호에는 두 가지가 있다 이중 등호(==) 와 삼중 등호(===) 이다. 두 등호의 차이점을 알아보자.

동등 연산자 (==)

  • 이중 등호를 사용하면 두 피연산자의 타입은 구분하지 않고, 값이 같은지 다른지 판단한다. 두 값의 타입이 다르다면 강제로 형변환을 한 뒤에 펴가한다.
  • 이로 인해 예상치 못한 결과를 초래할 수 있으므로 주의해야 한다.
console.log(1 == '1'); // true (문자열 '1'이 숫자 1로 변환됨)
console.log(0 == '');  // true (빈 문자열이 숫자 0으로 변환됨)
console.log(null == undefined); // true

엄격 동등 연산자 (===)

  • 삼중 등호를 사용하면 타입을 구분하고, 값과 타입 모두 비교한다. 따라서 형변환 과정을 거치지 않는다.
console.log(1 === '1'); // false (타입이 다름)
console.log(1 === 1);   // true
console.log(null === undefined); // false

비동등 연산자

  • !=: 값만 비교하며,타입은 무시한다.
  • !==: 값과 타입을 모두 비교한다.
console.log(1 != '1');  // false (값이 같으므로)
console.log(1 !== '1'); // true (타입이 다르므로)

정리

연산자 비교 기준 형 변환 수행 예제 결과
== 값만 비교 O 1 == '1' → true
=== 값과 타입 모두 비교 X 1 === '1' → false

'기초 학습 > JavaScript' 카테고리의 다른 글

[JS] JavaScript 함수 기초  (0) 2025.01.30
[JS] 객체 리터럴  (0) 2025.01.23
[JS] 자바스크립트의 배열  (1) 2025.01.22
[JS] Null과 Undefined  (0) 2025.01.21
[JS] JavaScript의 문자열 정리 (규칙, 메서드, 템플릿)  (0) 2025.01.19
'기초 학습/JavaScript' 카테고리의 다른 글
  • [JS] 객체 리터럴
  • [JS] 자바스크립트의 배열
  • [JS] Null과 Undefined
  • [JS] JavaScript의 문자열 정리 (규칙, 메서드, 템플릿)
뜐🐸
뜐🐸
패왕색 패기를 갖춘 뜐입니다~
  • 뜐🐸
    뜐의 개발 로그
    뜐🐸
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 기초 학습
        • HTML
        • CSS
        • JavaScript
        • Version Co..
        • 미니 프로젝트
        • DOM & 웹 AP..
      • CSS 프레임워크
        • Bootstrap
      • React
        • 개념 정리
        • 기초 정리
      • 알고리즘
        • Week 1: 입출..
        • 재귀
        • 백트래킹
      • javascript
      • FastAPI
        • 크롤링 서버 만들기
      • 전역 상태 관리
        • Redux
      • 한 입 리액트 챌린..
      • 영어
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 글쓰기
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    inline-block
    자바스크립트 #하노이 탑 #재귀 #백준 # 11729
    티스토리챌린지
    오블완
    :active
    :nth-child(n)
    :hover
    가상 선택자
    백준 #코딩테스트 #1074번 #재귀 #알고리즘 # 알고리즘 문제풀이
    :focus
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
뜐🐸
[JS] 비교 연산자 ( ==와 ===의 차이)
상단으로

티스토리툴바