HTML, CSS, JavaScript

[JavaScript] ===와 ==의 차이 (!=와 !==의 차이)

15호의 개발자 2021. 8. 9. 17:26
반응형

[JavaScript] ===와 ==의 차이 (Identity vs Equality)

 

 

== (Equality)

같음을 비교할 때 쓰이며,

같으면 true, 다르면 false를 반환한다.

타입 검사는 하지 않는다.

 

=== (Identity, Strict Equality)

===는 Identity라고 부르며, Strict Equality라고도 부른다.

즉, 같음을 비교할 때 ==보다 더 엄격하게 한다.

타입 검사도 하므로 같은 형식이어야 한다.

 

 

1
2
3
4
5
6
7
8
9
10
123 == '123'                 // true
123 == new String("123")    // true
'123' == new String("123")    // true
null == undefined            // true
 
 
123 === '123'                 // false
123 === new String("123")    // false
'123' === new String("123")    // false
null === undefined            // false
cs

 

두 값이 일치하는지 비교할 때에는 ==보다는 ===를 사용하는 것이 실수를 줄이는 데에 더 좋다.

 

 

 

추가) !=와 !==의 차이

 

이 외에도 !=!==가 있다.

두 값이 일치하지 않는지를 확인할 때 쓰이며,

!=는 타입 검사는 하지 않고, !==는 타입 검사까지 한다.

 

1
2
1 != '1'    // true
1 !== '1'    // false
cs

 

 

반응형