What is the difference between `newTarget` and `F` in abstract operation `Construct(..)` ?

Allen Wirfs-Brock allen at wirfs-brock.com
Mon Mar 16 17:58:22 UTC 2015


On Mar 16, 2015, at 10:32 AM, Coolwust wrote:

> From ES 6, section 7.3.14, there is an abstract operation `Construct (F, [argumentsList], [newTarget])`, so if I have the following code `var foo = new bar()`, then `newTarget` is the same as `F`, which is `bar`. 
> 
> My question is, in what situation, `F` is **NOT** the same as `newTarget`? And what is `newTarget` really?

super() calls within constructors

see http://people.mozilla.org/~jorendorff/es6-draft.html#sec-super-keyword-runtime-semantics-evaluation 
3rd algorithm

allen


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20150316/15754da4/attachment.html>


More information about the es-discuss mailing list