the new
operator as a function
This new
inherits the first-class nature of functions, allowing you to do a couple of cool things that you never could with new.
That also gets you .apply()
, even for native constructors.
ES2016 (aka ES6) provides Reflect.construct
, which works similarly. We fall back to it for cases with over 20 arguments if available.
npm install new-operator
var new_ = require('new-operator')