Skip to main content
Journey Uncommon Logo
JourneyUncommon
hardTypeScriptpolymorphic thisSingle-choice MCQ

Why does assigning a free `this`-returning method to a standalone variable lose the polymorphic guarantee in the following code?

class C { clone(): this { return this; } } class D extends C { extra = 1; } const fn: () => C = new D().clone; // (a) const x = fn(); // (b)