Interface NewableFunction

    interface NewableFunction {
        arguments: any;
        caller: Function;
        length: number;
        name: string;
        prototype: any;
        [hasInstance](value: any): boolean;
        apply<T>(this: (new () => T), thisArg: T): void;
        apply<T, A>(this: (new (...args: A) => T), thisArg: T, args: A): void;
        bind<T>(this: T, thisArg: any): T;
        bind<A, B, R>(this: (new (...args: [...A[], ...B[]]) => R), thisArg: any, ...args: A): (new (...args: B) => R);
        call<T, A>(this: (new (...args: A) => T), thisArg: T, ...args: A): void;
        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

      Parameters

      • this: (new () => T)
          • new (): T
          • Returns T

      • thisArg: T

        The object to be used as the this object.

      Returns void

    • 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[]

      Parameters

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

            • Rest...args: A

            Returns T

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

    • 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

      • this: T
      • thisArg: any

        The object to be used as the this object.

      Returns 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

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

      Parameters

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

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

            Returns R

      • thisArg: any

        The object to be used as the this object.

      • Rest...args: A

        Arguments to bind to the parameters of the function.

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

        • new (...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[]

      Parameters

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

            • Rest...args: A

            Returns T

      • thisArg: T

        The object to be used as the this object.

      • Rest...args: A

        Argument values to be passed to the function.

      Returns void

    • Returns a string representation of a function.

      Returns string