Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

스터디

JavaScript에서의 =, ==, === 차이점 본문

백엔드

JavaScript에서의 =, ==, === 차이점

_민영 2023. 4. 3. 13:39

< = 연산자>

> 대입 연산자: 왼쪽 피연산자에 오른쪽 피연산자의 값을 대입한다.

var a = 1;
let b = 2;
const c = 3;

 

 

 

 

 

< == 연산자>

> 동등 연산자: 두 개의 피연산자가 동일한지 확인하며, Boolean 값을 반환한다.

  • 두 피연산자의 타입이 다를 경우, 비교하기 전에 자동으로 동일한 타입으로 변환한 후 비교한다.
console.log(1 == 1); // true
console.log('hello' == 'hello'); // true
console.log('1' == 1); // true
console.log(0 == false); // true
console.log(null == undefined); // true

 

 

  • 두 피연산자가 모두 객체일 때, 두 피연산자가 동일한 객체를 참조할 때만 true를 반환한다.
  • 하나의 피연산자가 null이고 다른 하나가 undefined일 때, true를 반환한다. 

 

 

 

 

 

< === 연산자 >

> 일치 연산자: 두 개의 피연산자가 동일한지 확인하며, Boolean 값을 반환한다.

  • 동등 연산자와 달리 타입 변환을 시도하지 않는다.
  • 따라서 다른 타입을 가진 피연산자는 다르다고 판단한다.
console.log(1 === 1); // true
console.log('hello' === 'hello'); // true
console.log('1' === 1); // false
console.log(0 === false); // false
console.log(null === undefined); // false
console.log(NaN === NaN); // false

 

 

  • 피연산자의 타입이 다르면 false를 반환한다.
  • 두 피연산자가 모두 개체인 경우 동일한 개체를 참조하는 경우에만 true를 반환한다.
  • 두 피연산자가 모두 null이거나 두 피연산자가 모두 undefined일 경우 true를 반환한다.
  • NaN 값은 자기 자신을 포함하여 어떠한 값과도 일치하지 않는다. 따라서 피연산자 중 하나가 NaN이면 false를 반환한다.

'백엔드' 카테고리의 다른 글

JavaScript enum  (1) 2023.04.04
JavaScript REST API  (0) 2023.04.04
JavaScript 네이밍 컨벤션  (1) 2023.04.04
JavaScript callback 함수  (0) 2023.04.04
var, let, const 차이점  (0) 2023.04.03