class Person {
constructor(name, age) {
this.name = name
this.age = age
}
speak(){
//speak方法放在了—— 类的原型对象上,是给实例用的
//通过Person实例调用speak时,speak中的this就是Person实例
console.log('我很努力地学习');
console.log(this);
}
}
const p1 = new Person('tom',18);
p1.speak();//通过实例调用speak方法 方法 <==> 函数
const x = p1.speak;
x(); //undefined 这里属于函数的直接调用,为什么是undefined? 类中所有定义的方法,在局部都开启了严格模式
1.speak方法放在了类的原型对象上,是给实例用的
通过Person实例调用speak时,speak中的this就是Person实例
注意:类中所有的定义方法,在局部都开启了严格模式