Interface Function
arguments: any;
caller: Function;
length: number;
name: string;
prototype: any;
"[hasInstance]"(value: any): boolean;
apply(this: Function, thisArg: any, argArray?: any): any;
bind(this: Function, thisArg: any, ...argArray: any[]): any;
call(this: Function, thisArg: any, ...argArray: any[]): any;
toString(): string;
}
                 
                    
                  Hierarchy
              
              - Function (View Summary)
 Properties
arguments
caller
Readonlylength
Readonlyname
prototype
 Methods
[hasInstance] 
- "[hasInstance]"(value: any): boolean
- Determines whether the given value inherits from this function if this function was used as a constructor function. - A constructor function can control which objects are recognized as its instances by 'instanceof' by overriding this method. - Parameters- value: any
 - Returns boolean
apply
- apply(this: Function, thisArg: any, argArray?: any): any
- Calls the function, substituting the specified object for the this value of the function, and the specified array for the arguments of the function. - Parameters- this: Function
- thisArg: anyThe object to be used as the this object. 
- OptionalargArray: any- A set of arguments to be passed to the function. 
 - Returns any
bind
- bind(this: Function, thisArg: any, ...argArray: any[]): any
- For a given function, creates a bound function that has the same body as the original function. The this object of the bound function is associated with the specified object, and has the specified initial parameters. - Parameters- this: Function
- thisArg: anyAn object to which the this keyword can refer inside the new function. 
- ...argArray: any[]A list of arguments to be passed to the new function. 
 - Returns any
Returns the name of the function. Function names are read-only and can not be changed.