Javascript is a prototype-based language which has some slightly unusual semantics if you are used to languages like Java and C#. Classical OO inheritance isn’t trivial in Javascript – at least not conceptually. There are many webpages out there out there offering various solutions. Many of them propose complicated and strange answers to the problem, when actually it’s pretty simple.