isFunction() function
value가 함수인지 확인합니다.
타입 가드로 사용하면 유니온 타입에서 함수 멤버만 추출합니다. 예를 들어 number | (() => void)는 () => void로 좁혀집니다.
Signature:
typescript
isFunction: <T>(
input: T,
) => input is Extract<T, (...args: any[]) => unknown> extends never
? T & ((...args: any[]) => unknown)
: Extract<T, (...args: any[]) => unknown>Example
ts
isFunction(() => null); // true
isFunction(function () {}); // true
isFunction(class A {}); // true
isFunction({}); // false
isFunction(null); // false
isFunction("function"); // false