isFunction
function isFunction(value: unknown): value is Function;
Classified by its internal tag, so ordinary, async, generator and async-generator functions all pass. A class is a function too.
isX and nonX answer a question and never interrupt control flow; requireX and requireNonX hand the value back or throw. The scheme is explained in Validation conventions.
Parameters
Parameter | Type | Description |
|---|---|---|
|
| The value to check. |
Returns
boolean — true when the value is a function; otherwise false.
In TypeScript the guard narrows value to Function inside the branch.
Examples
What passes and what does not
isFunction(function () {}); // => true
isFunction(async function () {}); // => true
isFunction(Math.max); // => true
isFunction(null); // => false
isFunction("fn"); // => false
isFunction({}); // => false
See also
Source
23 September 2026
This documentation was generated with AI (Claude) from the library's source code.