front-end/TypeScript
Typescript Narrowing & Assertion
Hoon0211
2024. 2. 21. 11:00
728x90
1. Type Narrowing
1. if문을 활용하여 타입을 정해주는 것을 말합니다.
- typeof 를 사용합니다.( in, instanceof 등 타입을 확정하는 코드면 어떤 것이라도 가능 합니다)
function num(x :number | string){
if (typeof x === 'number') {
return x + 1
}
else if (typeof x === 'string') {
return x + 1
}
else {
return 0
}
}
2. Type Assertion
1. 타입을 간단하게 assert 할 수 있습니다.
- 변수에 'as type'으로 변경해주는 역할을 합니다.
function test(x :number | string){
return (x as number) + 1
}
2. as 키워드 특징
- as 키워드는 union type 같은 복잡한 타입을 하나의 정확한 타입으로 줄이는 역할을 수행합니다.
- 타입스크립트 기능을 해제하는 기능을 가지고 있습니다.
728x90