O'Reilly logo
  • Stefan Schwetschke thinks this is interesting:

it's important to now restore the constructor attribute

From

Cover of Functional Programming in JavaScript

Note

Define a "class": First create the constructor function, then set the prototype with Object.create (which seems to overwrite the constructor), then restore the constructor.