objects are created somewhere off in memory and the variable only contains a reference address to this object.
Yes.
How is that possible? From the memory table I typed out above it seems like memory tables can only contain a single value.
A reference address (called a "pointer") is a single value.
Is there like special slots in memory for composite-types?
Yes. Composites, also called "struct"s, can contain multiple values (but a fixed amout of them), like "a string for the name, a reference to the next property, and a field for the value" for a single link when describing an object as a linked list. The high-level JavaScript objects are stored as a multitude of different structures joined together to represent the data.
Are arrays and functions stored the same way as objects (eg by reference)?
Yes. However, their data structures differ, they're optimized on different things.