반응형
최근 개발하면서 프로그램에 버그가 발생하였습니다.
버그는 자바스크립트로 아래와 같이 처리 했는데, if문이 참이 되어 발생한 것이었습니다.
그래서 === 비교 연산자를 사용하여 버그를 수정하였습니다.
var a = 0;
var b = "";
if(a == b){ // true
...
}
==와 === 비교 연산자의 차이점을 알아야 할 것 같습니다.
== 연산자는 값만 비교하고, === 연산자는 값과 타입을 함께 비교하게 됩니다.
즉 1 == "1" 는 true이고, 1 === "1"은 false가 된다는 것입니다.
간단하 예제로 확인해보겠습니다.
- 숫자와 문자 비교
console.log(1 == "1"); // true
console.log(1 ==="1"); // false
- 숫자와 참거짓 비교
console.log(1 == true); // true
console.log(1 === true); // false
console.log(0 == false); // true
console.log(0 === false); // false
- 숫자 0과 문자 "0" or "" 비교
console.log(0 == "0"); // true
console.log(0 ==="0"); // false
console.log(0 == ""); // true
console.log(0 ===""); // false
- null과 undefined 비교
console.log(null == undefined); // true
console.log(null === undefined); // false
반응형
'Javascript' 카테고리의 다른 글
Javascript 로더(Loader) 만들기 (0) | 2024.07.04 |
---|---|
자바스크립트 크롬에서 엣지로 링크 열기 (0) | 2023.11.08 |
자바스크립트 "YYYY-MM-DD" 형식의 문자 날짜 체크 (0) | 2023.08.29 |
[SlickGrid] 셀(Cell)에 툴팁(Tooltip) 표시하기 (0) | 2023.07.13 |
HTML의 특정 Input에 붙여넣기 못하게 처리하는 방법 (0) | 2022.09.22 |
댓글