// 1. any 타입 ( 그냥 자바스크립트랑 같음 )
const getAny = (args: any) => {
return args + 2;
};
const result1 = getAny("철수");
// 2. unknown 타입 (개발자에게 안전하게 코딩하도록 유도!)
// 아무거나 들어올 수 있는데 상황에 따라 명시를 해줘라!
const getUnknown = (args: unknown) => {
if (typeof args === "number") {
return args + 2;
} else {
return "숫자를 넣어주세요!!";
}
};
const result2 = getUnknown("철수");
// return type은 괄호 뒤에 : 하고, 적어준다.
const getString = (args: string): string => {
return args;
};
const result1 = getString("철수");
// 2. 숫자타입
const getNumber = (arg: number): number => {
return arg;
};
const result2 = getNumber(8);
// 3. any 타입 - 1
const getAny = (args: any): any => {
return args;
};
const result3_1 = getAny(3);
const result3_2 = getAny("chulsoo");
const result3_3 = getAny(true);
// 4. any 타입 - 2
const getAnys = (arg1: any, arg2: any, arg3: any): [any, any, any] => {
return [arg3, arg2, arg1];
};
const result4 = getAnys("철수", "다람쥐초등학교", 8);
// 5. generic 타입 (들어온 타입을 그대로 사용)
// 뭔진 모르겠으나, 들어온타입을 그대로 사용
// 문자가 들어오면 전체가 문자가 되는 것이고 숫자면 전체가 다 숫자, 등등
function getGeneric<MyType>(args: MyType): MyType {
return args;
}
const aaa: string = "철수";
const bbb: number = 8;
const ccc: boolean = true;
const result4_1 = getGeneric(bbb);
const result4_2 = getGeneric(aaa);
const result4_3 = getGeneric(ccc);
//
// 7. generic - 축약1
// prettier-ignore
function getGenericsT<T1, T2, T3>(arg1: T1, arg2: T2, arg3: T3): [T3, T2, T1] {
return [arg3, arg2, arg1]
}
const result7 = getGenericsT("철수", "다람쥐초등학교", 8);
//
// 8. generic - 축약2
// prettier-ignore
function getGenericsTUV<T, U, V>(arg1: T, arg2: U, arg3: V): [V, U, T] {
return [arg3, arg2, arg1]
}
// prettier-ignore
const result8 = getGenericsTUV<string, string, number>("철수", "다람쥐초등학교", 8);
오늘본상품, 최근본상품
- 로컬스토리지에 저장 -> key값에 해당날짜를 기준으로 객체나 배열이 들어가도록