• Check that two objects are deeply equal, comparing members of each object and such

    Parameters

    • a: unknown

      The first object to compare

    • b: unknown

      The second object to compare

      WARNING: Objects like arrays from different iframes have different constructor function references even if they do the same thing, so this deep equality comparison fails objects that look the same but have different constructors because different constructors could produce false positives in a few specific situations. This means that two objects like arrays from different iframes that look the same will fail this check. Please use some other means to check deep equality in those situations.

      Note: This deep equality check considers undefined values on keys of objects NOT to be equal to not specifying the key at all. For example, { stuff: 3, things: undefined } and { stuff: 3 } are not considered equal in this case

    Returns boolean

    True if a and b are deeply equal; false otherwise