- Notifications
You must be signed in to change notification settings - Fork 13.1k
Closed
Closed
Copy link
Labels
BugA bug in TypeScriptA bug in TypeScriptDomain: JavaScriptThe issue relates to JavaScript specificallyThe issue relates to JavaScript specifically
Milestone
Description
// @allowJs: true // @checkJs: true // @Filename: a.js function C(p) { this.p = p } C.prototype = { m() { console.log(this.p) } } C.prototype.q = function(r) { return this.p === r } var c = new C(1) c.q(2) c.m()Expected behavior:
Both q and m are methods on c.
Actual behavior:
Only q is a method on c; m is not recognised.
Note that if the declaration is var C = function(p) { this.p = p }, everything works. This only happens when C is a function declaration instead of a variable declaration with a function initialiser.
andrewiggins
Metadata
Metadata
Assignees
Labels
BugA bug in TypeScriptA bug in TypeScriptDomain: JavaScriptThe issue relates to JavaScript specificallyThe issue relates to JavaScript specifically