Changing Context Of JavaScript Functions Using Call() And Apply()

// Create a global variable for context
var context = "Global (ie. window)";
// Create an object.
var objectA = {
  context: "Object A"
// Create another object.
var objectB = {
  context: "Object B"
// Define a function that uses an argument AND a reference
function testContext( approach ){
  console.log( approach, "==> THIS ==>", this.context );
// Invoke the unbound method with standard invocation.
testContext( "testContext()" );
// Invoke it in the context of Object A using call().
    ".call( objectA )"
// Invoke it in the context of Object B using apply().    
     [ ".apply( objectB )" ]

objectA.testContext = testContext;
// Invoke it as a property of object A.
objectA.testContext( "objectA.testContext()" );

// Invoke it in the context of Object B using call.
     " objectB )"

// Invoke it in the context of Window using apply.
     [ "objectA.testContext.apply( window )" ]

Published by


My passion became my profession , I'm a driven, energetic and proactive tech professionally. I consider myself an engagement professional, as I don't simply provide solutions, I create them. I am a continuous learner – always looking for new technologies, in my spare time I search Google for the latest trends . I like to think of myself as a futurist and I'm a Full Stack JavaScript Developer. >> Skills << ✔ Web App Development ✔ Strong Javascript ✔ Backbone.js, Angular.js, Dojo.js ✔ jQuery.js ✔ Node.js ✔ MongoDb , MySql ✔ / Web Sockets (Native) ✔ PHP ✔ Ruby (Watir - Automation) ✔ Grunt ✔ Github , Bitbucket , SVN ✔ Agile Process ✔ Scrum ✔ Ability to research and adapt new techs ✔ Fast Learner ✔ Always Punctual ✔ Critical Thinker ✔ Friendly Personality

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s