This is a general / fundamental question to help me understand the technical background of Objects in Javascript.
Coming from Java, I'm used to Objects (conceptually) being a collection of variables and methods. In Javascript however you can also access properties like a Python-like dictionary.
obj.property
obj['property']
In general this makes sense, as objects are essentially a meaningful collection of key/value pairs.
However, I wonder how it is actually implemented. Is it a hash-table, a datastructure or is it "normal" variables but with an alternative way to access them? For example, Java syntax suggests that properties are normal varibales when declaring a class like this:
class A {
int a = 1;
int b = 2;
}
In JS you actually never declare a property with let or const. Does this mean the property is actually just being pushed into some data-structure / collection?