面试题答案
一键面试this
的指向:this
指向全局对象(在浏览器环境中是window
,在 Node.js 环境中是global
)。- 原因:
- 当
const func = obj.func;
这行代码执行时,func
是从obj
对象上提取出来的函数。 - 然后调用
func()
,这种调用方式是普通函数调用。在普通函数调用中,this
指向全局对象(严格模式下this
为undefined
)。因为此时函数func
不再是作为obj
对象的方法调用,而是作为独立函数调用,所以this
不会指向obj
。
- 当