Object.getPrototypeOf() vs .prototype
<p>I am learning some JS and I am hoping someone can explain to me, in simplistic terms, the difference between <code>Object.getPrototypeOf()</code> vs <code>.prototype</code></p>

<pre><code>function ParentClass() {}

function ChildClass() {}

ChildClass.prototype = new ParentClass();

var mychild = new ChildClass();
var myparent = new ParentClass();


# .getPrototypeOf
Object.getPrototypeOf(ChildClass.prototype)   // ParentClass {}
Object.getPrototypeOf(mychild)                // ParentClass {}
Object.getPrototypeOf(ParentClass.prototype)  // {}
Object.getPrototypeOf(myparent)               // ParentClass {}

# .prototype
ParentClass.prototype                         // ParentClass {}
myparent.prototype                            // undefined
ChildClass.prototype                          // ParentClass {}
mychild.prototype                             // undefined
</code></pre>

<p>So it looks like you can only call .prototype on a constructor?</p>

<p>Are there any other differences?</p>