자바스크립트 기본(== vs ===)

김보현·2021년 9월 4일
0

자바스크립트

목록 보기
5/11
post-custom-banner

== vs ===

== 연산자와, === 연산자의 차이는 무엇일까?

==연산자는 비교하는 대상을 type coercion한다.

예를 들어 아래의 코드를 보자

const age='23';
console.log(age == 23); // true

위 코드에서 출력되는 것은 true일까 false일까?

답은 true다.

자바스크립트가 behind the scene에서 23을 String으로 coercion(강제)하여 데이터 타입이 다른데도 true가 나온다.

이 같은 상황을 피하려고 나온 연산자가 ===연산자이다.

===연산자, 즉 strict equality 연산자는 type coercion이 안된다.

const age='23';
console.log(age === 23); // false

위와 같은 코드이고 연산자만 strict equality 연산자로 바뀌었다. 하지만 age와 23의 데이터 타입이 다르기 때문에 이번에는 false를 출력한다.

profile
안녕하세요 김보현입니다.
post-custom-banner

0개의 댓글