函数中this的指向

91 阅读1分钟

this是环境对象,通常是:谁调用我,我就指向谁。

  1. 普通函数的this指向的是window

  2. new创建的构造函数,this指向 new创建的实例对象

  3. obj.fn() - 也就是对象的方法,指向的是这个对象

//控制台打印几次,分别打印什么
function fn(){
    console.log(this)
}
let obj = {
    name:'李四',
    age:30,
    eat:function(){
        fn()
    },
    learn:function(){
        console.log(this)
    }
}
obj.eat()//window 
obj.learn()//obj
let learn = obj.learn
learn()//window