Polecam zapoznać się z dokumentacją polecenia typeof w JavaScript
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/typeof
oraz typami danych:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures
W JS obiekty są typu "object". Nie ma tutaj klasycznie rozumianej obiektowości, jak np. w Java/C++/C#. W JS obiekt, to tzw. zbiór danych "klucz - wartość", w którym możesz umieszczać tablice, funkcje, obiekty - możesz to również zagnieżdżać.
Jeśli już przy obiektowości jesteśmy, to zwróć uwagę, że w JS natywnie nie masz dziedziczenia wg Klas (jak w innych językach obiektowych), ale masz dziedziczenie poprzez łańcuch prototype. Każdy obiekt JS ma globalny __proto__ (widać go zresztą u Ciebie na screenie), którego nie zaleca się zmieniać, gdyż wtedy możesz zaburzyć łańcuch dziedziczenia. Natomiast własność prototype możesz jak najbardziej zmieniać, a raczej dopisywać do niej (bo jest to obiekt) wartości takie jak np. funkcje, które mają być dostępne dla innych obiektów dziedziczących z tego obiektu.
W prostym sposób wyjaśnione dziedziczenie prototypowe znajdziesz np. tu (autor filmu także ma w playliście tutoriale m.in. o obiektach i ich tworzeniu w JS - więc możesz się zapoznać):
https://www.youtube.com/watch?v=pjsSPDJPUAI&index=15&list=PLGC-hHIh7l5vs0uDGlQEXQGQR2hW8Gcwl
Dokumentacja:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Inheritance_and_the_prototype_chain
W każdym razie obiekty i obiektowość w JavaScript jest trochę inna od tej klasycznej. Nie jestem pewien, ale bodajże w TypeScript (odmiana JavaScript) ta obiektowość jest bardziej klasyczna niż w "zwykłym" JavaScript.