diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 747166f94eb65..007ac2542099c 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -21203,7 +21203,7 @@ namespace ts { let notNullOrUndefinedFilter = false; // the aim of this filter is type has 'undefined',filter it out from result. const isExpressionContainOptionalChain = isAccessExpressionContainOptionalChain(typeOfExpr.expression); // ~undefined means other values except undefiend. boolean, bigint.... - if ((assumeTrue && literal.text !== "undefined")||(!assumeTrue && literal.text === "undefined")) { + if ((assumeTrue && literal.text !== "undefined") || (!assumeTrue && literal.text === "undefined")) { // !== undefined // === ~undefined // use full expression to narrow @@ -21211,7 +21211,7 @@ namespace ts { notNullOrUndefinedFilter = true; } else { - // !== ~undefined, === undefined, !==undefined + // !== ~undefined, === undefined // use non-OptionalChain part to narrow propertyTypeArray = narrowUnionTypeWithPropertyPathAndExpression(type, typeOfExpr.expression,/* optionalChainSlice */ true); if (isExpressionContainOptionalChain) {