Skip to main content

Learn About Call(), Apply() and Bind() Method in JavaScript

Hello Guys,

In this blog your going to learn about CALL(), APPLY() and BIND() method in JavaScript with details understanding and examples.

Invoking a function with a specific this value is possible in JavaScript through call(), apply(), and bind(). These three methods may be comparable in terms of their function, but the way they operate and handle arguments set them apart.

call(), apply(), and bind() can be confusing to differentiate, so let's look at how each one differs from one another.


Call() :- 

  • Method used to invoke a function with specified this value and given arguments - call(). First argument is this value, followed by any expected arguments.
  • For instance, a case in point:


  • Calling findNames() in this scenario, we set the this value to person, thus causing person.name to equate to this.name within the function.


APPLY() :- 

  • Ahead of time, it's sometimes unclear how many arguments will be required when calling a function. 
  • In such instances, the apply() method is handy in that it takes an array of arguments rather than passing them one by one like call().

For instance:



  • Passing in two arguments through an array, we call the findNames() function and assign a this value of person in this instance.

BIND() :- 

  • The bind() method generates a fresh function that will eventually be called, but it doesn't execute the function immediately. 
  • Rather, it creates the function with a designated this value.

For instance, let me give you an illustration:


  • We will be logging a greeting message to the console when we call a function nowFindNames, with the 'person' value set as its 'this' parameter. 
  • The message that will display is "Hello, TechoSwags!"

The understanding of call(), apply() and bind() can be immensely beneficial as they allow for great flexibility in setting a function's this value. 

It is crucial to know how these methods differ in order to select the most suitable one for your individual requirements.

If you guys have any query then you can drop a mail to us on this mail id:

techoswag@gmail.com

Comments

Popular posts from this blog

Different between ``===`` and ``==`` operators in JavaScript

Hello Guys, In this blog we are going to learn about "===" and "==" different with details understanding and examples. JavaScript operators that you might have stumbled upon as a developer include "===", "==". JavaScript's "==" operator is commonly utilized for loose comparison purposes.  It functions by converting both of the values to a common type and then comparing them for equality.  Here's an example: The comparison operator "==" transforms the value of "17" from a string to a number before determining if the values match.  Consequently, if both versions of the data share the same properties and values, the comparison is marked as valid and returns true. The results of the "==" operator can occasionally be surprising, including: The comparison returns true when the "==" operator converts the empty string to the number 0 and compares it to the number 0.  This can result in bugs, so ...

What is the Lazy-loading in Angular and Different between Old syntax and New Syntax of Lazy-loading with examples

Hey Guys, In this blog we are going to learn about How we can use Lazy-loading in angular with examples. We are also going to learn the different syntax of lazy loading in angular . Lazy loading is used to load the specified module once the routes match. It will load the modules once use access that particular section or modules in our application. Using lazy loading will improve the performance of our application and also decrease the load time of our application. Using lazy-loading will help to reduce the bundle size of the application. Lazy -loading Old syntax in angular 7 or lower version          {                path: "feature",                loadChildren:'./feature-module/feature-module.module#FeatureModuleModule'          }, Lazy -loading new syntax in angular 8+   {     path:'feature',     loadChildren:() =>  import...

What is Pipes in Angular? Built in Pipes with examples and how we can create custom pipe using angular

Hello Guys, In this blog you're going to learn about Angular Pipes with in-built pipes and and customized pipes with details understanding. As an Angular developer, you often come across situations where you need to transform data before displaying it to the user. For instance, you might want to format a date, display a currency in a specific format, or filter a list of items based on some criteria. This is where Angular Pipes come into the picture. Angular Pipes are built-in features that allow you to transform data easily and efficiently. What are Angular Pipes? Angular Pipes are a built-in feature in Angular that allow you to transform data in the template. A pipe takes in a value or values and returns a transformed value. The transformed value is then displayed in the template. Angular Pipes are similar to filters in AngularJS. However, they are more powerful and flexible. Angular Pipes can transform data in a variety of ways, including formatting, filtering, sorting, and more....