prototype property on a given object refers to the parent object, which allows the given object to inherit all its properties and methods. However, the definition of parent probably should be defined here. In a prototype-based language, that means that a single object can be the parent of many other objects. A side effect of this is that a property that changes in the parent is reflected in all child objects, assuming the child objects don't override it. This essentially forms a tree structure of objects that you can traverse. This is different then in a class-based language where the parent refers to the super class, and does not represent a tree of objects. The object also inherits the properties and methods from the parent, but it is all self contained within that one object.