Personally I try to avoid JS constructors as `new` keyword behaviour is broken IMHO. Sure, there are ways to patch that, but should we do it over and over again?

Better to use `class` keyword, as it's universally supported part of ES2015 already. However classes come with its own set of confusion to Java and C# developers.

I've tried to explain the point in a post, so have a read, please :)

Father. Husband. Solutions developer profesionally (software quite often). Arsenal supporter. Cyclist.