Thursday, July 4, 2024
HomeLanguagesJavascriptLodash _.curry() Method

Lodash _.curry() Method

The Lodash _.curry() method returns a curried version of the given function. If the reverse is true, arguments will be processed from right to left.

Syntax:

_.curry( fun, reverse )

Parameters: This method takes two parameters as listed above and discussed below.

  • fun: This is the given function.
  • reverse: It is an optional parameter and determines whether the arguments will be reversed or not.

Return Value: It returns a curried version of the function.

Note: To execute the below examples, you have to install the lodash-contrib library by using this command prompt and execute the following command.

npm install lodash-contrib

Example 1: 

Javascript




// Defining lodash contrib variable
var _ = require('lodash-contrib'); 
  
// Function
function fun(a, b, c, d){
    return a + b + c + d;
}
  
// Making curried function
var gfgFunc = _.curry(fun);
  
// Only operates for arguments same
// as the number in function
console.log("Addition is :",
    gfgFunc(42)(23)(20)(30));
  
// Not adds for less arguments
console.log(gfgFunc(1)(2)(3));


Output:

Addition is : 115
[Function: wrapper]

Example 2:

Javascript




// Defining lodash contrib variable
var _ = require('lodash-contrib'); 
  
// Function
function fun(a, b, c){
    return a * b * c;
}
  
// Making curried function
var gfgFunc = _.curry(fun);
  
// Only operates for arguments same
// as the number in function
console.log("Multiplication is :",
    gfgFunc(20)(23)(27));
  
// Not multiplies for less arguments
console.log(gfgFunc(1)(2));


Output: 

Multiplication is : 12420
[Function: wrapper]

Example 3: Arguments are processed left to right for reversed = false.

Javascript




// Defining lodash contrib variable
var _ = require('lodash-contrib'); 
  
// Function
function fun(a, b, c) {
    return arguments;
}
  
// Making curried function
var gfgFunc = _.curry(fun, false);
  
// Only operates for arguments same
// as the number in function
console.log("curried arguments are :",
    gfgFunc("arg1","arg2","arg3"));


Output:

curried arguments are : [Arguments] 
    { '0': 'arg1', '1': 'arg2', '2': 'arg3' }

Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, neveropen Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we’ve already empowered, and we’re here to do the same for you. Don’t miss out – check it out now!

Dominic Rubhabha Wardslaus
Dominic Rubhabha Wardslaushttps://neveropen.dev
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments