자바스크립트를 처음 시작할 때 다른 언어에는 없어서 헷갈렸던 "===" 이건 도대체 뭘까요?
보통 C언어나 Java에서는 보이지 않는 "==="는 생각보다 단순한 개념을 가지고 있습니다.
예제를 한번 볼까요?
다음 중 어떤 것이 거짓일까요?
10 == "10"
0 == false
1 == true
1 == 1
"apple" == "apple"
null == undefined
네, 모두 참(True) 입니다.
타입을 엄격하게 지정하는 Java나 c와는 달리, 자바스크립트에서는 var / let/ const등을 통해 모든 타입의 변수를 선언합니다.
그래서 자바스크립트에서는 "===", "!==" 를 사용하는 것을 권장합니다.
그런 경우 위의 케이스에서 대부분의 비교문들이 거짓(False)이 되겠죠?
"==="로 바꿔 비교를 하면, 다음과 같은 결과가 나타납니다.
10 === "10" => false
0 === false => false
1 === true => false
1 === 1 => true
"apple" === "apple" => true
null === undefined => false
위에서 보여드린 예시 외에도, 다양한 케이스들이 있으니 더 자세한 내용은 다음 문서를 참고해 주세요 :)
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Strict_equality
반응형
'Frontend > Javascript' 카테고리의 다른 글
콜백 함수(callback) (0) | 2022.12.13 |
---|---|
단 20줄로 만들어보는 로또번호 생성기! 소스 코드 (0) | 2022.11.07 |
Undefined / null in Javascript (0) | 2022.10.13 |
짧은 팁 - Javascript에서 문자열을 출력하는 방법 (0) | 2022.10.12 |
let 과 var의 차이점? 어떤 걸 사용해야 할까요? 🤷♀️ (0) | 2022.10.10 |