Something.prototype is kind of class definition, of what properties with be with the given to new object as references, after new Soemthing() creation
the keyword new , actually in the back does like:

somethingobj = reference to a new empty object
somethingobj.constructor =(reference to) Something (function)
somethingobj.__proto__ =(reference to) Something.prototype

when searching for some property in something
like somethingobj.someproperty
if it is not found in somethingobj own properties, then it searches the property in its __proto__ , nested deeply until __proto__ is null
somethingobj.someproperty (if not found)
(then if somethingobj.__proto__ not null, then it checks) somethingobj.__proto__.someproperty