비교연산자 === 과 ==의 차이

유림·2024년 2월 13일
0

💡dding's TIL

목록 보기
41/41
post-thumbnail

비교 연산자 중 =====의 차이점에 대해 기록해두고자 한다.

대충 알고 있을 때 제대로 비교하기 위해선 ===를 사용해야한다 정도만 알고 있었던 것 같다. 가끔 쫌쫌따리로 스프링 코드를 볼 때 ==가 많이 나오길래 같은 의미이지만 스프링에선 이 연산자로도 비교가 가능한줄 알았다.

javascript기반의 react에서 이 비교 연산자의 차이점은 '무엇을 비교하는가'에 있다.

{} === {}

✅ 엄격한 같음
✅ 먼저 타입을 비교하고 타입이 동일하지 않을 경우 false를 바로 반환한다.
const a = 100;
const b = '100';

console.log(a === b); // false
✅ {} 객체 안에 들어있는 실제 데이터를 각각 비교하기 때문에 true가 된다.

{} == {}

✅ 느슨한 같음
const a = 100;
const b = '100';
console.log(a === b); // true
✅ {} 객체의 실제 데이터가 아니라 참조를 기반으로 비교하기 때문에 false가 된다. 동일하게 생긴 데이터라도 참조하는 곳(데이터를 담아두는 곳)이 다를 수 있기 때문이다.
profile
ɪ ʜᴏᴘᴇ ᴛᴏ sᴏʟᴠᴇ ʀᴇᴀʟ ᴘʀᴏʙʟᴇᴍs👩🏻‍💻❤️

0개의 댓글