Javascript

TS 제네릭

브라더 코드 2023. 10. 21. 21:55

플레이그라운드에서 테스트해보며 썼던 코드이다.

함수를 쓸때 제네릭을 사용하면 좋다. 리턴 타입을 T로 두고 여기에 다양한 타입을 쓸 수 있음

interface UserInfo {
    userId: number;
    id: number;
    title: string;
    body: string;
}

const getUserByUserId = async <T extends {}>(arg: number): Promise<T> => {
    return await (await fetch(`https://jsonplaceholder.typicode.com/posts/${arg}`)).json();
}

(async function (){
    console.log(await getUserByUserId<UserInfo>(23));
})();