Open In App

Underscore.js _.mapArgsWith() Method

The _.mapArgsWith() method takes a mapping function and returns a new combinator function which will take a target function and will return a new function that maps its arguments with the mapping function before executing the body of the target function.

Syntax:



_.mapArgsWith( mapping_function );

Parameters: 

Return Value: This method returns a function.



Note: This will not work in normal JavaScript because it requires the underscore.js contrib library to be installed. 

underscore.js contrib library can be installed using npm install underscore-contrib –save.

Example 1: We made a function that cubes the given value then adds that value to itself.




// Defining underscore contrib variable
var _ = require('underscore-contrib'); 
  
function add (x) { 
    return x + x + x ; 
}
  
function sub (x) {
    return  x - 2; 
}
  
var addnow = _.mapArgsWith(sub);
  
var subnow = addnow(add);
  
console.log(subnow(5))

Output:

9

Example 2:




// Defining underscore contrib variable
var _ = require('underscore-contrib'); 
  
function squ (x) { 
    return x * x ; 
}
  
function add (x) {
    return  x + 10; 
}
  
var addnow = _.mapArgsWith(add);
  
var sq = addnow(squ);
  
console.log(sq(5))

Output:

225

Example 3:




// Defining underscore contrib variable
var _ = require('underscore-contrib'); 
  
function cs (x) { 
    return 
"GeeksforGeeks : Computer Science Portal for Geeks"
}
  
function geek (x) {
    return  "GeeksforGeeks"
}
  
var gfg = _.mapArgsWith(geek);
  
var gfgFunc = gfg(cs);
  
console.log(gfgFunc())

Output:

GeeksforGeeks : Computer Science Portal for Geeks

Example 4:




// Defining underscore contrib variable
var _ = require('underscore-contrib'); 
  
function cs (x) { 
    return x; 
}
  
function geek (x) {
    return  x[0]+" : "+x[1]; 
}
  
var gfg = _.mapArgsWith(geek);
  
var gfgFunc = gfg(cs);
  
console.log(gfgFunc(["GeeksforGeeks",
    "Computer Science Portal for Geeks"]))

Output:

GeeksforGeeks : Computer Science Portal for Geeks

Article Tags :