Using Objects in ActionScript > Controlling classes or methods with Function object properties > Invoking a function using the Function.call method |
![]() ![]() ![]() |
Invoking a function using the Function.call method
The Function.call
method invokes the function represented by a Function object.
In almost all cases, the function call operator (()
) may be used instead of the call
method. The function call operator creates code that is concise and readable. The call
method is primarily useful when the this
parameter of the function invocation needs to be explicitly controlled. Normally, if a function is invoked as a method of an object, within the body of the function, this
is set to myObject
, as in the following:
myObject.myMethod(1, 2, 3);
In some situations, you may want this
to point somewhere else; for example, if a function must be invoked as a method of an object but is not actually stored as a method of that object.
myObject.myMethod.call(myOtherObject, 1, 2, 3);
You can pass the value null
for the thisObject
parameter to invoke a function as a regular function and not as a method of an object. For example, the following function invocations are equivalent:
Math.sin(Math.PI / 4) Math.sin.call(null, Math.PI / 4)
For more information, see Function.call
in the ActionScript Dictionary.
To invoke a function using the Function.call method:
Use the following syntax:
myFunction
.call(thisObject
,parameter1
, ...,parameterN
)
The method takes the following parameters:
![]() |
The parameter |
![]() |
The parameters |
![]() ![]() ![]() |