首页前端开发正文

一道关于this指向的例题

朱绪2021-11-27631JavaScript

下面代码的运行结果是?

const foo = {
    bar: 10,
    fn: function() {
        console.log(this)
        console.log(this.bar)
    }
}
var fn1 = foo.fn
fn1()

上述代码中的this指向的是window,虽然fn函数在foo对象中作为方法,但是在赋值给fn1之后,fn1是在window的全局环境中执行的。

所以,以上代码输出window和undefined