==, === 차이점

송인호·2022년 6월 27일
0

React

목록 보기
41/70

== 는 Equal Operator이고, === 는 Strict Equal Operator이다.

== 는 a == b 라고 할때, a와 b의 값이 같은지를 비교해서, 같으면 true, 다르면 false라고 한다.(값만 같으면 true이다.)

===는 Strict, 즉 엄격한 Equal Operator로써, "엄격하게" 같음을 비교할 때 사용하는 연산자이다.

===는 a === b 라고 할때, 값과 값의 종류(Data Type)가 모두 같은지를 비교해서, 같으면 true, 다르면 false라고 한다.

<기본자료형(Primitive)>

값은 똑같이 1이지만 값의 종류가 숫자냐, 문자열이냐에 따라 === 연산자를 사용할 때 결과가 false라고 나온다.

let a = 1; 
let b = "1"; 
console.log(a == b); // true 
console.log(a === b); // false 

null과 undefined는 공통적으로 값이 없음을 뜻하지만, 값의 종류(Data Type)가 다르기 때문에,

=== 연산자를 사용할 때 결과가 false라고 나온다.

console.log(null == undefined); // true 
console.log(null === undefined); // false 

기본적으로 1은 true, 0은 false로 나타낼 수 있지만, 데이터 타입은 다르다.

console.log(true == 1); // true 
console.log(true === 1); // false 

숫자 0과 문자열 “0”, ""

console.log(0 == "0"); // true 
console.log(0 === "0"); // false 
console.log(0 == ""); // true 
console.log(0 === ""); // false 

NaN은 Not a Number라는 뜻으로, 숫자가 아닌 것을 의미하지만 그 값 자체끼리는 같지 않다.

console.log(NaN == NaN); // false 
console.log(NaN === NaN); // false 
profile
프론트엔드 개발자

0개의 댓글