tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

value-via-new.js (949B)


      1 // Copyright (C) 2016 the V8 project authors. All rights reserved.
      2 // This code is governed by the BSD license found in the LICENSE file.
      3 /*---
      4 esid: sec-new-operator-runtime-semantics-evaluation
      5 es6id: 12.3.3.1
      6 description: Value when invoked via NewExpression
      7 info: |
      8  NewExpression:newNewExpression
      9 
     10  1. Return ? EvaluateNew(NewExpression, empty).
     11 
     12  MemberExpression:newMemberExpressionArguments
     13 
     14  2. Return ? EvaluateNew(MemberExpression, Arguments).
     15 
     16  12.3.3.1.1 Runtime Semantics: EvaluateNew
     17 
     18  [...]
     19  8. Return ? Construct(constructor, argList).
     20 
     21  7.3.13 Construct (F [ , argumentsList [ , newTarget ]])
     22 
     23  1. If newTarget was not passed, let newTarget be F.
     24 features: [new.target]
     25 ---*/
     26 
     27 var newTarget = null;
     28 function f() {
     29  newTarget = new.target;
     30 }
     31 
     32 new f;
     33 
     34 assert.sameValue(newTarget, f, 'Invoked without Arguments');
     35 
     36 newTarget = null;
     37 
     38 new f();
     39 
     40 assert.sameValue(newTarget, f, 'Invoked with Arguments');
     41 
     42 reportCompare(0, 0);