동등연산자와 일치연산자

안희수·2021년 2월 1일
0

일단 교육과정을 정식으로 듣고 있는 것이 아니라
개인적으로 공부하는 과정을 적은 것이므로
Today I Learn 이라는 명칭이나 양식을 사용하지는 않고
정말로 새로이 알게 된 내용에 대해서 정리하고자 합니다.

JavaScript 입문 동영상을 보던 중
동등연산자와 일치연산자라는 것을 보게 되었는데
동등연산자 == 이라고 하는 것에 경우 C#이나 JAVA에서도 사용했기 때문에
생소하지 않았지만 일치연산자 === 라는 것은 처음 보게 되었습니다.

먼저 JAVA에서 사용되는 == 과 equls 라는 비교연산자에 경우
객체의 주소값을 비교한다고 되어 있으며
일반 객체처럼 Heap 영역에 생성된 String 객체와 리터럴을 이용해 string constant pool에 저장된 String 객체의 주소값은 다를 수밖에 없다라고 되어 있습니다.

그래서 String 객체의 경우는 == 이 아닌 값 자체를 비교하는 equals를
사용한다고 나와 있는데 (이는 C#도 개념적으로 동일)

JavaScript의 경우
var a = 1;
var b = "1";
인 경우 두 값이 의미하는 바가 같은 경우
같은 값으로 간주하려는 경향이 있어

실제 전혀 다른 값이지만 == 을 사용할 경우
a == b 로 사용할 경우 true 를 반환하게 됩니다.

이는 차후 JavaScript로 코드를 구현할 때
문제를 야기하는 요소이므로
완벽하게 일치하는 경우에만 참인 === 일치연산자를 사용하도록
권장되어 있습니다.

// 참조 링크
JS Comparison Table
코딩의 시작, TCP School

profile
9년차 소프트웨어 개발자 (2024년 재 개편 예정입니다)

0개의 댓글

관련 채용 정보