import{isObject}from'@angular-ru/cdk/object';classA{}expect(isObject(NaN)).toBe(false);expect(isObject(null)).toBe(false);expect(isObject(undefined)).toBe(false);expect(isObject(1)).toBe(false);expect(isObject(Infinity)).toBe(false);expect(isObject('')).toBe(false);// non primitiveexpect(isObject([])).toBe(true);expect(isObject({})).toBe(true);expect(isObject(newA())).toBe(true);expect(isObject(newDate())).toBe(true);expect(isObject(newMap())).toBe(true);expect(isObject(()=>{})).toBe(true);expect(isObject(newNumber(6))).toBe(true);expect(isObject(Math)).toBe(true);expect(isObject(Object.create(null))).toBe(true);expect(isObject(document.createElement('div'))).toBe(true);expect(isObject(new (functionFoo(){})())).toBe(true);expect(isObject(window)).toBe(true);
isPlainObject - check only literal object (non instance object)
isSimpleObject - check only instance object or literal (non complex structure - Array, DOM, Set, Map, Date, other structure)