Overerving in JavaScript verschilt van de meeste andere programmeertalen. Het objectsysteem in JavaScript is gebaseerd op prototypen, niet op klassen. Objecten in JavaScript zijn slechts een verzameling van een naam (sleutel) en waardeparen. Als het gaat om overerving, heeft JavaScript maar één constructie: objecten. Elk object heeft een privé-eigenschap die een link bevat naar een ander object, het prototype ervan.