Promise() vs. new Promise()
alex at kocharin.ru
Wed Aug 20 09:55:55 PDT 2014
20.08.2014, 19:18, "Claude Pache" <claude.pache at gmail.com>:
> Le 20 août 2014 à 16:56, Alex Kocharin <alex at kocharin.ru> a écrit :
>> But... why?
>> I mean, every constructor can determine if it is called without `new` (that "this instanceof" check on top of every other constructor). So `new` keyword can really be removed from everywhere except in constructors themselves.
>> Using `new` does create issues. For example, you can't write "new require('something').Constructor(blah)", and I don't even remember how to put brackets right.
>> Why make people use it?
> According to http://esdiscuss.org/notes/2013-07-25 (search for "anti-pattern"), allowing constructors without `new` would break subclassing.
Still doesn't make much sense... This pattern (this instanceof ...) breaks another pattern (BaseClass.call(this)). Why first one is deprecated, not the second one?
More information about the es-discuss