Given you use a constructor function to create a new Object, you can run into ugly side effects as soon as you forget the required `new` keyword.
Let's take an example:
After creating a new instance of my Zoo Object, I can access the animals property with zp.animals.
What happens when we accidentally forget the `new` keyword?
Ouch! That can lead to weird behaviour in our applications and long debugging sessions.
With instanceof (even available in ES3) we can guard against it: