Function isPlainObject

  • Tests whether or not an unknown value is a plain JavaScript object. That is, if it is an object created by the Object constructor or one with a null prototype.

    Use of the type parameter T to further narrow the type signature of the value being tested is strongly discouraged unless you are completely confident that the value is of the necessary shape to conform with T. This function does nothing at either compile time or runtime to prove the value is of shape T, so doing so amounts to nothing more than performing a type assertion, which is generally a bad practice unless you have performed some other due diligence in proving that the value must be of shape T. Use of the functions in the has co-library are useful for performing such full or partial proofs.

    Type Parameters

    • T extends object = object

    Parameters

    • value: unknown

      The value to test.

    Returns value is T