JS: Function Call, Apply, Bind

By Xah Lee. Date: . Last updated: .

In JavaScript, any function, when called, has a associated value called “this binding”.

In function definition, the value of “this binding” is represented by the keyword this.

〔►see JS: “this” Binding

When a function f is called in the form x.f(…), the value of “this binding” is the object x.

You can use methods {call, apply, bind} to pass any object to be “this binding”.

The methods {call, apply, bind} are properties of the object Function.prototype. ALL JavaScript functions are decedents of Function.prototype. 〔►see JS: Prototype and Inheritance


〔►see JS: Function.prototype.call


The function “apply” is the similar to “call”, but the second argument is a array. The elements of the array is passed to the function as separate arguments.

〔►see JS: Function.prototype.apply


〔►see JS: Function.prototype.bind

Function Topic

  1. JS: Define Function
  2. JS: Function Parameters
  3. JS: var/function Order
  4. JS: var Name Scope
  5. JS: Function Declaration vs Function Expression
  6. JS: Closure
  7. JS: Functional Programing
  8. JS: Function Call, Apply, Bind
  9. JS: Function Argument Default Value
  10. JS: Function Rest Parameters
  11. JS: Arrow Function

  1. JS: Function Object
  2. JS: Function.prototype
Like what you read? Buy JavaScript in Depth