패스트캠퍼스 데브캠프

김민태의 데브캠프 2기 - 타입 단언과 타입 가드

vitamin3000 2024. 11. 8. 16:24

타입 단언과 타입 가드

타입 단언 : 프로그래머가 컴파일러에게 내가 너보다 타입에 대해 더 잘 알고 있고, 나의 주장에 대해 의심하지 마라

var foo = {};
foo.bar = 123; // error
boo.bas = 'hello'; // error

interface Foo{
	bar: number;
	bas: string;
}
var foo = {} as Foo;
foo.bar = 123;
foo.bas = 'hello'

const bodyElement = document.querySelector('body') as HTMLBodyElement;
bodyElement.innerText = "Hello";

 

타입 가드 예시

 

// type guard
if (bodyElement) {
    bodyElement.innerHTML = "Hello";
}

function func(arg: string | null){
    return (arg as string).toLowerCase();
}

func('hello');
func(null);