PLATFORM
  • Tails

    Create websites with TailwindCSS

  • Blocks

    Design blocks for your website

  • Wave

    Start building the next great SAAS

  • Pines

    Alpine & Tailwind UI Library

  • Auth

    Plug'n Play Authentication for Laravel

  • Designer comingsoon

    Create website designs with AI

  • DevBlog comingsoon

    Blog platform for developers

  • Static

    Build a simple static website

  • SaaS Adventure

    21-day program to build a SAAS

Written By

Currying in JS - shorts

Currying in JS - shorts

Currying is a technique of evaluating function with multiple arguments, into sequence of function with single argument.

Currying is a transformation of function that translates a function from callable as f(a, b, c) into callable as f(a)(b)(c).

function curry(f) {
    return function(a) {
        return function(b) {
            return f(a,b); 
        }; 
    }; 
}
function sum(a, b) {
    return a + b; 
}
 let curriedSum = curry(sum); 
 curriedSum(1)(2); 

 // 3

Why is it Useful?

  • Currying helps you to avoid passing the same variable again and again.
  • Little pieces can be configured and reused with ease.

How to convert an existing function to curried version?

The curry function does not exist in native JavaScript. But libraries like lodash makes it easier to convert a function to curried one.

let add = function(a, b, c) {
    return a+ b + c; 
}; 
let curried = _.curry(add); 
let addByTwo = curried(2); 

console.log(addByTwo(0, 0)); //2
console.log(add(2, 1, 1)); // 4
console.log(curried(4)(5)(6)); // 15

🚀Thanks For Reading | Happy Coding🏗

Comments (0)

loading comments