1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
=== tests/cases/conformance/es6/newTarget/newTargetNarrowing.ts ===
function foo(x: true) { }
>foo : (x: true) => void
>x : true
>true : true
function f() {
>f : typeof f
if (new.target.marked === true) {
>new.target.marked === true : boolean
>new.target.marked : boolean
>new.target : typeof f
>target : any
>marked : boolean
>true : true
foo(new.target.marked);
>foo(new.target.marked) : void
>foo : (x: true) => void
>new.target.marked : true
>new.target : typeof f
>target : any
>marked : true
}
}
f.marked = true;
>f.marked = true : true
>f.marked : boolean
>f : typeof f
>marked : boolean
>true : true
|