9장 타입 변환과 단축 평가
타입 변환
- 명시적 타입 변환 : 개발자가 의도적으로 값의 타입을 변환하는 것
- 암묵적 타입 변환 : 개발자의 의도와는 상관없이 표현식을 평가하며 자동 변환되는 것
- 문자열 타입으로 변환
- String 생성자 함수를 new 연산자 없이 호출하는 방법
- Object.prototype.toString 메서드
- 문자열 연결 연산자
- 숫자 타입으로 변환
- Number 생성자 함수를 new 연산자 없이 호출하는 방법
- parseInt, parseFloat 함수를 사용하는 방법 (문자열만 숫자 타입으로 변환 가능)
-
- 단항 산술 연산자를 이용하는 방법
-
- 산술 연산자를 이용하는 방법
- 불리언 타입으로 변환
- Boolean 생성자 함수를 new 연산자 없이 호출하는 방법
- ! 부정 논리연산자를 두 번 사용하는 방법
단축 평가
- 논리 연산자를 사용한 단축 평가
- 논리곱(&&) 연산자논리곱 연산자는 좌항에서 우항으로 진행된다.
- 논리곱 연산자는 두 개의 피연산자가 모두 true로 평가될 때 true를 반한다.
- 논리합(||)연산자논리합 연산자도 좌항에서 우항으로 평가가 진행된다.
- cat && dog // dog 반환 false && dog // false 반환 cat || dog // cat 반환 false || dog // dog반환
- 논리합 연산자는 두 개의 피연산자 중 하나만 true로 평가되어도 true를 반한다.
옵셔널 체이닝 연산자
- ES11에서 도입된 옵셔널체이닝 연산자 (?.)는 좌항의 피연산자가 null 또는 undefined인 경우 undefined를 반환하고, 그렇지 않으면 우항의 프로머티 참조를 이어간다.
null 병합 연산자
- ES11에서 도입된 null 병합 연산자 (??) 는 좌항의 피연산자가 null 또는 undefined인 경우 우항의 피연산자를 반환하고 그렇지 않으면 좌항의 피연산자를 반환한다.
Falsy 값일때도 옵셔널 체이닝과 null 병합 연산자는 정상 작동.
'Front-End > Javascript' 카테고리의 다른 글
[자바스크립트 DeepDive] let,const 키워드와 블록 레벨 스코프 (0) | 2022.05.17 |
---|---|
[Javascript DeepDive] 함수_1 (0) | 2022.05.10 |
[자바스크립트 Deep Dive] 표현식과 문 (0) | 2022.04.27 |