Skip to content
Related Articles

Related Articles

Improve Article
JavaScript | handler.apply() Method
  • Last Updated : 27 Mar, 2020

The handler.apply() method in JavaScript is used as a trap for a function call. The value returned by this method is used as the result of a function call through a proxy.

Syntax:

const p = new Proxy(target, {
  apply: function(target, thisArg, argumentsList) {
  }
});

Parameters: This method accept three parameters as mentioned above and described below:

  • target: This parameter holds the target object.
  • thisArg: This parameter is used for the call.
  • argumentsList: This parameter contains the list as the argument and used for the call.

Return value: This method returns any value.

Below examples illustrate the handler.apply() method in JavaScript:



Example 1:




function sum(a, b) {
  return a + b;
}
  
const handler = {
  apply: function(target, thisArg, argumentsList) {
    console.log(`Calculate sum: ${argumentsList}`);
  
    return target(argumentsList[0], argumentsList[1])*14/3;
  }
};
  
const proxy1 = new Proxy(sum, handler);
  
console.log(sum(23, 4));
console.log(proxy1(23, 4));

Output:

27
"Calculate sum: 23, 4"
126

Example 2:




var str = function(arg1, arg2) {  
  console.log('geeks get (' + arg1 + ', ' + arg2 + ')');  
};  
var proxy = new Proxy(str, {  
  apply: function(target, thisArg, parameters) {  
   console.log('Geeksforgeeks');  
    
    return target.apply(thisArg, parameters);  
  }  
});  
proxy('Tutorial', 'Jobs');  
    
proxy.apply(null, ['Knowledge', 'internships']);  
proxy.call(null, 'Stipend', 'skills');

Output:

"Geeksforgeeks"
"geeks get (Tutorial, Jobs)"
"Geeksforgeeks"
"geeks get (Knowledge, internships)"
"Geeksforgeeks"
"geeks get (Stipend, skills)"

Supported Browsers: The browsers supported by JavaScript handler.apply() method are listed below:

  • Google Chrome
  • Firefox
  • Opera
  • Safari
  • Edge



My Personal Notes arrow_drop_up
Recommended Articles
Page :