JavaScript использует обозначение [object Object] для представления объектов, потому что в языке есть разные типы объектов, и не все из них созданы одинаковыми. 1
Некоторые из типов объектов и их обозначения:
Обозначение [object Object] выбрано, потому что функция-конструктор таких объектов называется Object (с большой буквы «O»). 12 Часть «object» (с маленькой буквы) указывает на структурную природу объекта, который может содержать свойства и методы. 1