How to check if a value is a function in JavaScript

In this Article we will go through how to check if a value is a function only using single line of code in JavaScript. This is a one-line JavaScript code snippet that uses one of the most popular ES6 features => Arrow Function.

Let's define this short function:

const isFunction = v => ['[object Function]', '[object GeneratorFunction]', '[object AsyncFunction]', '[object Promise]'].includes(Object.prototype.toString.call(v));

#Example

isFunction(function() {});          // true
isFunction(function*() {});         // true
isFunction(async function() {});    // true