콜백함수
함수를 인자로 받아 호출할 수 있는 형태의 함수입니다.
const init = (callback: () => void) => {
console.log("callback start");
callback();
console.log("callback end");
};
init(() => console.log("yes!"));
중첩 함수
함수 안에 함수를 넣을 수 있다는 간단한 아이디어 입니다.
const calc = (value: number, cb: (arg: number) => void) => {
// 화살표 함수든 함수 선언식이든 함수입니다.
let add = (a: number, b: number) => a + b;
function mul(a: number, b: number) {
return a * b;
}
let result = mul(add(3, 4), value);
cb(result);
};
calc(2, (output) => console.log(output));
고차 함수
고차 함수(high order function)란 함수를 반환하는 함수를 말합니다. 고차 컴포넌트(HOC)라고 해서 컴포넌트를 감싼 컴포넌트를 react에서 사용한 적이 있는데 이와 같은 논리입니다.
리턴하는 값을 함수로 지정하면 됩니다. 사용하는 방법은 아래와 같이 func(3)(4) 이렇게 이중으로 실행하면 됩니다.
const add = (a: number) => {
return (b: number) => {
return a + b;
};
};
// 곧바로 실행
console.log(add(3)(8));
// 한 번 걸쳤다가 실행
const first = add(3);
console.log(first(8));
'Programming Language > 🟦 Typescript' 카테고리의 다른 글
Type assertions (타입 단언) (0) | 2020.10.21 |
---|---|
배열과 튜플의 타이핑 및 간단한 tip(rest, generic ...) (0) | 2020.08.23 |
interface 기초와 활용 (Read-only properties, Indexable Types, extends) (0) | 2020.03.05 |
tsc-watch 사용하기 (0) | 2020.03.05 |
TS 기본 입문! (0) | 2020.03.05 |