Why use Object.create() to set child's prototype?

In Object Oriented Programming: Set the Child’s Prototype to an Instance of the Parent it’s recommended we use:

Dog.prototype = Object.create(Animal.prototype);

But, this has the same result as :

Dog.prototype = Animal.prototype;

This is more intuitive. Why should we include Object.create() if Animal.prototype is already an object? Has it got something to do with memory allocation? Is the first line just pointing towards Animal.prototype instead of making Dog.prototype its own object? Isn’t that the point of a prototype though?