일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- async/await
- CSS
- CORS
- 프로미스
- 이벤트 캡처링
- 서버 사이드 렌더링
- react
- 이벤트 버블링
- 스코프 체인
- 가상 dom
- 로컬 스토리지
- 브라우저 렌더링원리
- 세션 스토리지
- 깊은 복사
- 클라이언트 사이드 렌더링
- MPA
- props와 state 차이점
- webpack
- 실행 컨텍스트
- 자바스크립트의 클래스
- 리액트
- 변수 생성 단계
- 호이스팅
- polyfill
- undeclared
- 주소창에 naver 입력시 일어나는 일
- 얕은 복사
- 자바스크립트
- 자바스크립트 함수
- 리액트의 생명 주기
Archives
- Today
- Total
Gapus Dev Blog
[자바스크립트] == 과 === 에 대해서 본문
== 연산자
- 설명
- 동등 비교 연산자
- 비교하려는 두 값의 타입이 다를 경우 타입 강제 변환을 하고 비교를 진행
- 타입 강제 변환이 일어나기 때문에 예상치 못한 결과 가능성 있음
- 사용하는 이유
- 타입 강제 변환
- 비교하려는 값의 타입이 다를 경우 강제 변환을 실행
- 명시적인 타입 변환 없이도 값을 비교 할 수 있도록 돕는다.
- 유연한 비교
- 타입 강제 변환으로 다른 타입과 값을 비교할 수 있다.
- 일부 상황에서 유용
- 호환성 유지
- 오래된 자바스크립트 코드와의 호환성 유지하기 위해 존재
- 타입 강제 변환
- 예시
// '==' 연산자 예시
console.log(5 == "5"); // true
console.log(0 == false); // true
console.log(null == undefined); // true
console.log(1 == true); // true
=== 연산자
- 설명
- 엄격한 동등 비교 연산자
- 비교하려는 두 값의 타입이 다를 경우 타입 강제 변환을 하지 않고 비교를 진행
- 타입까지 엄격하게 비교하기 때문에 보다 안전한 비교 가능
- 사용하는 이유
- 타입의 안전성
- 비교하려는 값의 타입까지 엄격하게 검사
- 예상치 못한 타입 변환으로 인한 오류를 방지
- 코드의 안전성 향상
- 의도한 비교
- 값뿐만 아니라 타입까지 비교하기 때문에, 개발자의 의도한 비교를 명확히 표현 가능
- 코드의 가독성
- 타입까지 엄격하게 비교하기 때문에, 코드를 읽는 사람이 비교 연산의 의도를 더 잘 이해 가능
- 코드의 가독성 향상
- 타입의 안전성
- 예시
// '===' 연산자 예시
console.log(5 === "5"); // false
console.log(0 === false); // false
console.log(null === undefined); // false
console.log(1 === true); // false
'프론트엔드 > JavaScript' 카테고리의 다른 글
[자바스크립트] 클래스에 대해 (0) | 2023.11.19 |
---|---|
[자바스크립트] 스코프에 대해 (1) | 2023.11.17 |
[자바스크립트] Map과 Set (1) | 2023.11.13 |
[자바스크립트] 얕은 복사, 깊은 복사 (0) | 2023.11.12 |
[자바스크립트] ES6 이후 생긴 주요 기능 (0) | 2023.11.11 |