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
|
//// [controlFlowAnalysisOnBareThisKeyword.ts]
declare function isBig(x: any): x is { big: true };
function bigger(this: {}) {
if (isBig(this)) {
this.big; // Expect property to exist
}
}
function bar(this: string | number) {
if (typeof this === "string") {
const x: string = this;
}
}
//// [controlFlowAnalysisOnBareThisKeyword.js]
"use strict";
function bigger() {
if (isBig(this)) {
this.big; // Expect property to exist
}
}
function bar() {
if (typeof this === "string") {
var x = this;
}
}
|