Call signiture
Call signiture은 코드에 마우스를 올리면 나오는 타입 정보이다.
type Add = (a: number, b: number) => number;
const add: Add = (a, b) => a + b;
함수를 만들기 전 직접 call signiture를 만들어서 type를 미리 선언한 후
Overloading
하나의 함수가 여러개의 call signiture를 가지고 있을 때 발생한다.
동일한 이름의 함수에서 파라미터만 달라지고 비슷한 로직이 반복될 때 사용된다.
함수 내에서 파라미터의 타입에 맞게 각각 구현한다.
파라미터의 개수가 같을 때
type Add = {
(a: number, b: number): number;
(a: number, b: string): number;
};
const add: Add = (a, b) => {
if (typeof b === "string") return a;
else return a + b;
};
파라미터의 개수가 다를 때
type Add = {
(a: number, b: number): number;
(a: number, b: number, c: number): number;
};
const add: Add = (a, b, c?:number) => {
if(c) return a+b+c;
return a+b
};
Generics
call signiture를 선언할 때 타입을 잘 모를 때 제너릭을 사용한다.
타입스크립트가 타입을 유추한다.
type SuperPrint = {
<T>(arr: T[]): T;
};
const superPrint: SuperPrint = (arr) => arr[0];

제네릭을 선언하고 처음 사용되는 지점에서 제네릭의 타입이 정해진다 .
type Player<E> = {
name: string;
extraInfo: E;
};
type Extra = {
favFood: string
}
type MyPlayer = Player<Extra>
'Tech > TypeScript' 카테고리의 다른 글
[TS 기초] 타입스크립트로 블록체인 만들기 (0) | 2023.04.12 |
---|---|
[TS 기초] TS의 객체 지향적 특징 (0) | 2023.03.21 |
[ TS 기초 ] 타입스크립트란 (0) | 2023.03.21 |
[Typescript / TS] 영화 웹 서비스 만들기 (0) | 2023.02.07 |
[Typescript / TS] Frame motion을 사용한 애니메이션 (0) | 2023.01.29 |
Call signiture
Call signiture은 코드에 마우스를 올리면 나오는 타입 정보이다.
type Add = (a: number, b: number) => number;
const add: Add = (a, b) => a + b;
함수를 만들기 전 직접 call signiture를 만들어서 type를 미리 선언한 후
Overloading
하나의 함수가 여러개의 call signiture를 가지고 있을 때 발생한다.
동일한 이름의 함수에서 파라미터만 달라지고 비슷한 로직이 반복될 때 사용된다.
함수 내에서 파라미터의 타입에 맞게 각각 구현한다.
파라미터의 개수가 같을 때
type Add = {
(a: number, b: number): number;
(a: number, b: string): number;
};
const add: Add = (a, b) => {
if (typeof b === "string") return a;
else return a + b;
};
파라미터의 개수가 다를 때
type Add = {
(a: number, b: number): number;
(a: number, b: number, c: number): number;
};
const add: Add = (a, b, c?:number) => {
if(c) return a+b+c;
return a+b
};
Generics
call signiture를 선언할 때 타입을 잘 모를 때 제너릭을 사용한다.
타입스크립트가 타입을 유추한다.
type SuperPrint = {
<T>(arr: T[]): T;
};
const superPrint: SuperPrint = (arr) => arr[0];

제네릭을 선언하고 처음 사용되는 지점에서 제네릭의 타입이 정해진다 .
type Player<E> = {
name: string;
extraInfo: E;
};
type Extra = {
favFood: string
}
type MyPlayer = Player<Extra>
'Tech > TypeScript' 카테고리의 다른 글
[TS 기초] 타입스크립트로 블록체인 만들기 (0) | 2023.04.12 |
---|---|
[TS 기초] TS의 객체 지향적 특징 (0) | 2023.03.21 |
[ TS 기초 ] 타입스크립트란 (0) | 2023.03.21 |
[Typescript / TS] 영화 웹 서비스 만들기 (0) | 2023.02.07 |
[Typescript / TS] Frame motion을 사용한 애니메이션 (0) | 2023.01.29 |