function currying in javascript code example

Example 1: currying in javascript

//No currying
function volume(w, h, l) {
  return w * h * l;
}

volume(4, 6, 3); // 72

//Currying
function volume(w) {
  return function(h) {
    return function(l) {
      return w * h* l;
    }
  }
}

volume(4)(6)(3); // 72

Example 2: what is currying

a technique that applies a function 
to its arguments one at a time, with 
each application returning a new function 
that accepts the next argument.

Example 3: what is currying in javascript example

Uses of currying function
  a) It helps to avoid passing same variable again and again.

  b) It is extremely useful in event handling. 

syntax:

     function Myfunction(a) {
        return (b) => {
           return (c) => {
             return a * b * c
             }
            }
         }


myFunction(1)(2)(3);

Example 4: what is a curried function

Curried Function
// Non-curried
function add(a, b, c) {
  return a + b + c
}

add(1, 2, 3)
//-> 6

// Curried
function addd(a) {
  return function (b) {
    return function (c) {
      return a + b + c
    }
  }
}

addd(1)(2)(3)
//-> 6

Tags:

Misc Example