타입 단언 (type assertion)
- 사례1. 아이디나 클래스 이름으로 엘리먼트를 가져오면, 컴파일러는 이게 무슨 타입의 dom인지 모른다(html코드를 검사 하진 않음). 그 때 특정 타입에 해당하는 속성을 쓰고 싶다면 타입 단언을 해줘야 에러가 나지 않는다
- 사례2. 유니온 타입일 때, 특정 타입에서만 쓸 수 있는 함수등을 사용한다면 단언이 필요
- 사례3. 비동기 작업의 결과를 올바르게 접근하기 위해 단언이 필요할 수 있음
변수 as 타입
or<타입> 변수
⇒ 해당 타입으로 컴파일러에게 단언- (한 프로젝트에서는 두가지 방법중 하나로 통일하는게 좋다)
- 선언할 때 단언하거나, 값을 쓸 때마다 단언할 수 있다
할당 단언
- 타입이 할당되지 않아도 할당 되었다고 단언할 수 있다
변수명!
⇒ null이 아니라고 컴파일러에게 단언