Context of this inside classes
メニューを表示するにはスワイプしてください
When you define methods inside a JavaScript class, the value of this inside those methods usually refers to the specific instance of the class on which the method was called. This means you can access and modify the instance's properties using this.propertyName. However, the value of this is determined by how a method is invoked, not where it is defined. If you detach a method from its instance and call it as a regular function, this may become undefined (in strict mode) or refer to the global object (in non-strict mode), leading to unexpected behavior.
12345678910111213141516class Car { constructor(make, model) { this.make = make; this.model = model; } displayInfo() { console.log(`Car: ${this.make} ${this.model}`); } } const myCar = new Car('Toyota', 'Corolla'); myCar.displayInfo(); // Car: Toyota Corolla const detachedDisplay = myCar.displayInfo; // detachedDisplay(); // In strict mode: TypeError or 'this' is undefined; in non-strict mode: 'this' is the global object
すべて明確でしたか?
フィードバックありがとうございます!
セクション 1. 章 6
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 1. 章 6