美文网首页
this 指向(启发性的例子)

this 指向(启发性的例子)

作者: 苍老师的眼泪 | 来源:发表于2022-10-12 17:36 被阅读0次
    class Test {
        name = 'Test Class'
        getName() {
            console.log(this.name)
        }
    }
    
    let t = new Test()
    
    let obj = {
        name: 'Obj',
        getName: t.getName
    }
    
    obj.getName()   // 输出 Obj, 因为最终调用 getName 的对象是 obj
    

    箭头函数里面的this是静态计算的,也就是无论后面谁调用 getName、有没有对象调用 getName, 箭头函数里面的 this 就已经确定了

    class Test {
        name = 'Test Class'
        getName = () => {
            console.log(this.name)
        }
    }
    
    let t = new Test()
    
    let obj = {
        name: 'Obj',
        getName: t.getName
    }
    
    obj.getName()   // 输出 Test class
    
    
    

    相关文章

      网友评论

          本文标题:this 指向(启发性的例子)

          本文链接:https://www.haomeiwen.com/subject/ctnzgrtx.html