728x90
반응형
화살표 함수식을 활용
let corsURL = (url:string): string => `https://crossorigin.me/${url}`;
제너릭 함수 구현
* function GenericReturnFunc<T>(arg: T): T { return arg; }
* const GenericReturnFunc = (arg: T):<T> {
return arg
}
함수에서 타입스크립트 활용 return값은 type
// number 타입의 매개변수를 return하는 함수
function NumberReturnFunc(arg: number): number{ return arg; }
const NumberReturnFunc = (agr: number ):number => {
return arg
}
// string 타입의 매개변수를 return하는 함수
function StringReturnFunc(arg: string): string { return arg; }
const NumberReturnFunc = (agr: string ):string => {
return arg
}
// boolean 타입의 매개변수를 return하는 함수
function BooleanReturnFunc(arg: boolean): boolean { return arg; }
const NumberReturnFunc = (agr: boolean): boolean=> {
return arg
}
interface 활용한 제네릭 타입 함수 구현
return값이 통신하는 데이터일 경우 ?
타입을 알 수 없기에 제네릭으로 활용
export interface IPaginationMeta {
page: number
totalPage: number
}
export interface IPagination<T> {
meta: IPaginationMeta
list: T[]
}
export interface ISomeModel {
id: number
title: string
content: string
}
export const someFunc = (): IPagination<ISomeModel> => {
// const someRes = {
// meta: {page: 1,totalPage: 10},
// list: [
// {
// id: 1,title: 'asdfasdf',content: 'jsiodfisjodf'
// }
// ]
// }
const someRes = someHttpFunc()
return someRes
}
tsx에서 화살표 함수 사용 시
제네릭 매개변수에 extneds를 사용하여 컴파일러에게 제네릭 화살표 함수라고 알려줘야 함
let GenericReturnFunc = <Type extends {}>(arg: Type): Type => {
return arg;
}
728x90
'programming language > TypeScript' 카테고리의 다른 글
Property 'done' does not exist on type 'object' .ts (0) | 2023.12.24 |
---|---|
제네릭(Generics) 재 정리!! (0) | 2022.12.28 |
제네릭을 이용한 타입 정의 (0) | 2022.12.15 |
ts에서 class를 사용할 때 (0) | 2022.12.14 |
enum 살펴보기 (1) | 2022.12.07 |
댓글