- 箭头函数定义时确定,普通函数执行时确定
- 严格模式下——undefined">函数在严格模式下——undefined
- 对象中的this——指向调用者
- 构造函数中的this——当前实例化对象
- 定时器中的this——window
箭头函数定义时确定,普通函数执行时确定
class Student { constructor(name) {this.name = "Tom";}getInfo() {return {name: "Jerry",getName() {return this.name;},};}}var s = new Student();console.log(s.getInfo().getName()); // Jerry
如何打印出Tom,只能修改class中代码
class Student { constructor(name) {this.name = "Tom";}getInfo() {return {name: "Jerry",getName:() => {return this.name;},};}}var s = new Student();console.log(s.getInfo().getName()); // Tom
obj 实例化,修改属性和重新实例化的指针问题
重新实例化后是另一个对象了,跟源对象没关系
“use strict”
函数在严格模式下——undefined

在函数内部,this的值取决于函数被调用的方式。
对象中的this——指向调用者


把obj1.赋值给obj2.f obj2也有了f 方法

obj1里面的o1是obj2 obj2里的fn是foo函数 在obj2里面调用的拿到obj2中的a
