Sep 9, 2021 JavaScript
How to check if a value is an async function in JavaScript

In this Article we will go through how to check if a value is an async 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 isAsyncFunction = v => Object.prototype.toString.call(v) === '[object AsyncFunction]';

Sep 9, 2021 JavaScript
How to compose functions in JavaScript

In this Article we will go through how to compose functions 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:

// Compose functions from right to left
const compose = (...fns) => x => fns.reduceRight((y, f) => f(y), x);

Sep 9, 2021 JavaScript
How to create a function that accepts a single argument in JavaScript

In this Article we will go through how to create a function that accepts a single argument 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 unary = fn => arg => fn(arg);

Sep 9, 2021 JavaScript
How to create an empty function in JavaScript

In this Article we will go through how to create an empty 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 noop = () => {};

Sep 9, 2021 JavaScript
How to curry a function in JavaScript

In this Article we will go through how to curry 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 curry = (fn, ...args) => fn.length <= args.length ? fn(...args) : curry.bind(null, fn, ...args);

Sep 9, 2021 JavaScript
How to delay the evaluation of a function in JavaScript

In this Article we will go through how to delay the evaluation of 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:

// returns a new version of `fn` that returns values as lazy evaluable
const thunkfy = fn => (...args) => () => fn(...args);

Sep 9, 2021 JavaScript
How to execute a function once in JavaScript

In this Article we will go through how to execute a function once 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 once = fn => ((ran = false) => () => ran ? fn : (ran = !ran, fn = fn()))();

Sep 9, 2021 JavaScript
How to flip the arguments of a function in JavaScript

In this Article we will go through how to flip the arguments of 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:

// Reverse the order of arguments
const flip = fn => (...args) => fn(...args.reverse());

// For binary functions
const flip = fn => (b, a) => fn(a, b);

Sep 9, 2021 JavaScript
How to identity function in JavaScript

In this Article we will go through how to identity 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 identity = x => x;

Sep 9, 2021 JavaScript
How to logical xor operator in JavaScript

In this Article we will go through how to logical xor operator 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:

// returns `true` if one of the arguments is truthy and the other is falsy

const xor = (a, b) => (a && !b) || (!a && b);