티스토리 뷰

 

 

JavaScript 동치 비교 == , === 차이점

 


JavaScript에는 다른 언어와는 다르게 === 연산이 존재한다.

다른 언어들을 먼저 접하고 실무를 하게 된다면 자연스럽게 JavaScript에서도 == 연산을 대부분 먼저 사용하게 된다.

이런 이유로 대부분의 개발자 들이 무심코 == 연산으로 주로 비교 조건절을 사용하는 경우가 많다.

동치 비교 차이점을 파악해서 일치 연산자를 사용하도록 하자.

 

 

 

== 동등 연산자(Equal Operator)

동등 연산자는 피연산자들이 서로 타입이 다르면 같은 타입으로 변환을 한다. 그다음 strict 비교를 적용한다.

두 피연사자가 둘 다 객체라면, 자바스크립트가 메모리의 같은 객체를 참조할 때 내부 내용을 비교하며, 메모리의 같은 객체를 가르킨다면 두 객체를 같다고 한다.

1 == 1 // true "1" == 1 // true 1 == '1' // true 0 == false // true 0 == null // false 0 == undefined // false null == undefined // true 'abc' == new String('abc') // true 'true' == true // false

 

 

=== 일치 연산자(Strict Equal Operator)

일치 연사자는 피연산자들이 서로 타입이 달라도 타입 변환 없이 strictly equal 일 때를 말한다.

3 === 3 // true 3 === '3' // false false === 0 // false null === undefined // false

'abc' === new String('abc') // false

 

JavaScript 실무 개발자분들은 동등 연산자(Equal Operator)와 일치 연사자(Strict Equal Operator)에 대한 차이점을 정확히 이해하시고 일치 연사자(Strict Equal Operator)로 엄격한 코딩을 해야 한다.

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
링크
«   2024/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
글 보관함