JavaScript
1class Person { 2 constructor(name) { 3 this.name = name; 4 } 5 greet() { 6 const doIt = function () { 7 console.log(`Hi, I'm ${this.name}`); 8 }; 9 doIt(); 10 } 11} 12const minky = new Person('Momo'); 13minky.greet(); // TypeError: Cannot read property 'name' of undefined
thisがundefindになっているみたいなんですが、その理由がわかりません。
doIt関数内にあるthisにはコンストラクタで書いたpersonのthisが適用されていないってことはわかるんですがそれはなぜでしょうか??
出典:りあクト!
回答2件
あなたの回答
tips
プレビュー