Difference between call apply and bind in javascript

Difference between call apply and bind in javascript

Difference between call, apply and bind in javascript

Both call and apply perform the same functions only difference between call and apply is that call execute a function in the context, or scope of the first argument that we pass to it and their related arguments.

In call we pass all the arguments with the object as a first argument.

Example as for call with object and single argument

 	var obj = { 		
		num : 10 	
	}; 	

	var addMore = function(a){ 		
		return this.num + a; 	
	}; 	

	console.log(addMore.call(obj,5)); // 15 

Call with object and multiple arguments

 	var obj = { 		
		num : 10 	
	}; 	

	var addMore = function(a,b,c){ 		
		return this.num + a + b + c; 	
	} 	

	console.log(addMore.call(obj,5,10,15)); // 40 

In apply we pass first argument as a object context and second argument as an array of arguments

 	var obj = { 		
		num : 10 	
	}; 	

	var addMore = function(a,b,c){ 		
		return this.num + a + b + c; 	
	} 	
	
	var arr = [5,10,15]; 	console.log(addMore.apply(obj,arr)); // 40 

In bind we pass object as an argument with the function and bind return us a function for later execute

 	var obj = { 		
		num : 10 	
	}; 	

	var addMore = function(a,b,c){ 		
		return this.num + a + b + c; 	
	} 	

	var bound = addMore.bind(obj); 	
	console.log(bound(5,10,15)); // 40 

Call and apply are pretty interchangeable. Just decide whether it’s easier to send in an array or a comma separated list of arguments.

Bind is a bit different. It returns a new function. Call and Apply execute the current function immediately.

Very Nice :)

What is SEO

What is SEO

SEO stands for search engine optimization. It is the process of getting traffic from the free, organic, editorial or natural search results on search …

read more
Security Checks in Node Js

Security Checks in Node Js

We can use lots of security check on node js for development and production environment. …

read more