In this article, we will re-implement a basic version of the somewhat controversial class syntax introduced in JavaScript. The problem with classes is that... well... JavaScript doesn't have classes! It's a language based on prototypal inheritance , not classical inheritance. Don't be the guy or gal who uses classes thinking it works exactly like classes in Java or Python.