Name
Function.call( ) — invoke a function as a method of an object
Availability
JavaScript 1.5; JScript 5.5; ECMAScript v3
Synopsis
function
.call(thisobj
,args...
)
Arguments
-
thisobj
The object on which
function
is to be invoked. In the body of the function,thisobj
becomes the value of thethis
keyword.-
args...
Any number of arguments, which will be passed as arguments to
function
.
Returns
Whatever value is returned by the invocation of
function
.
Throws
-
TypeError
If this method is invoked on an object that is not a function.
Description
call( )
invokes the specified
function
as if it were a method of
thisobj
, passing it any arguments that
follow thisobj
in the argument list. The
return value of call( )
is the value returned by
the function invocation. Within the body of the function, the
this
keyword refers to the
thisobj
object.
Use Function.apply( )
instead if you want to
specify the arguments to pass to the function in an array.
Example
// Call the default Object.toString( ) method on an object that // overrides it with its own version of the method. Note no arguments. Object.prototype.toString.call(o);
See Also
Get JavaScript: The Definitive Guide, Fourth Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.