Out of curiosity what would you have against using ES6 classes in conjunction with the factory…
Danny Fenstermaker

It also requires more code and makes it harder to set static props (unless you use the static props stage 2 feature with babel or TypeScript).

What benefit do you think it provides?

If you meant `instanceof`, beware: it lies if the class prototype gets swapped out, or across execution contexts (e.g., iframes). `instanceof` should be avoided in JS.