Interface CallableFunction

    interface CallableFunction {
        arguments: any;
        caller: Function;
        length: number;
        name: string;
        prototype: any;
        [hasInstance](value: any): boolean;
        apply<T, R>(this: ((this: T) => R), thisArg: T): R;
        apply<T, A, R>(this: ((this: T, ...args: A) => R), thisArg: T, args: A): R;
        bind<T>(this: T, thisArg: ThisParameterType<T>): OmitThisParameter<T>;
        bind<T, A, B, R>(this: ((this: T, ...args: [...A[], ...B[]]) => R), thisArg: T, ...args: A): ((...args: B) => R);
        call<T, A, R>(this: ((this: T, ...args: A) => R), thisArg: T, ...args: A): R;
        toString(): string;
    }
    Hierarchy

    Properties

    arguments: any
    caller: Function
    length: number
    name: string

    Returns the name of the function. Function names are read-only and can not be changed.

    prototype: any

    Methods

    • 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

    • Calls the function with the specified object as the this value and the elements of specified array as the arguments.

      Type Parameters

      • T
      • R

      Parameters

      • this: ((this: T) => R)
          • (this): R
          • Parameters

            • this: T

            Returns R

      • thisArg: T

        The object to be used as the this object.

      Returns R

    • Calls the function with the specified object as the this value and the elements of specified array as the arguments.

      Type Parameters

      • T
      • A extends any[]
      • R

      Parameters

      • this: ((this: T, ...args: A) => R)
          • (this, ...args): R
          • Parameters

            • this: T
            • Rest...args: A

            Returns R

      • thisArg: T

        The object to be used as the this object.

      • args: A

        An array of argument values to be passed to the function.

      Returns R

    • 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.

      Type Parameters

      • T

      Parameters

      Returns OmitThisParameter<T>

    • 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.

      Type Parameters

      • T
      • A extends any[]
      • B extends any[]
      • R

      Parameters

      • this: ((this: T, ...args: [...A[], ...B[]]) => R)
          • (this, ...args): R
          • Parameters

            • this: T
            • Rest...args: [...A[], ...B[]]

            Returns R

      • thisArg: T

        The object to be used as the this object.

      • Rest...args: A

        Arguments to bind to the parameters of the function.

      Returns ((...args: B) => R)

        • (...args): R
        • Parameters

          • Rest...args: B

          Returns R

    • Calls the function with the specified object as the this value and the specified rest arguments as the arguments.

      Type Parameters

      • T
      • A extends any[]
      • R

      Parameters

      • this: ((this: T, ...args: A) => R)
          • (this, ...args): R
          • Parameters

            • this: T
            • Rest...args: A

            Returns R

      • thisArg: T

        The object to be used as the this object.

      • Rest...args: A

        Argument values to be passed to the function.

      Returns R

    • Returns a string representation of a function.

      Returns string