비교 연산자
자바스크립트에는 같은지 비교하는 연산을 수행하는 연산자가 두가지 있다. ==와 ===. 무슨 차이가 있을까?
같음 연산자 (==)
비교하는 두 변수의 형식이 다르면, 하나의 변수를 다른 하나의 변수로 변환한다. 즉, 두 변수가 서로 다른 자료형 ( 문자열 - 숫자, 문자열 - 불린, 숫자 - 불린) 쌍이면 둘 중 하나를 다른 자료형으로 바꾸어 비교한다.
항등 연산자 (===)
반대로, 비교하는 두 변수의 형식이 다를 때, 형식변환이 수행되지 않는다. 즉, 두 식의 형식이 다르면 무조건 false 리턴.
비교 연산 | 같음 연산자 결과 | 항등 연산자 결과 |
---|---|---|
1 == "1" | true | false |
0 == false | true | false |
"" == false | true | false |
"1" == true | true | false |
null==undefined | true | false |
null == false | false | false |
"" == null | false | false |