There are lots of articles and posts explaining how JavaScript inheritance works, but why was JavaScript implemented using prototypal inheritance instead of classical inheritanc
Unless one of the designers of JavaScript stops by to weigh in, we can only speculate. That having been said, here's my take:
JavaScript is executed as it is interpreted, so there is no concept of separating the declaration of an object's type from the object itself. It's a very functional approach. The instance is coming into existence as it is being described - we are always operating on active instances. Because of this, the concept of a class - or a passive "instance template" - has no real place.