** 函数中的this指向调用这个函数的owner**
也就是运行该函数的对象
下面看看案例:

当只经过步骤①的时候,只调用了getNameFunc函数,获得了h函数整体作为返回值。并没有加()调用该h函数,所以不会执行 h函数,结果如下:

当添加步骤2,即执行h函数时,发现两个this的指向不同,即第一个this指向 object对象,第二个指向window 对象。
第一个this是谁使用他的的呢?就是object对象,它执行了getNameFunc函数,因为加了个()。
第二个this是谁使用了它呢?是window对象,因为object.getNameFunc函数执行后返回一个函数h,而console.log里面有没有指明是谁调用了它,所以默认他的调用者是window对象。
我们看看步骤②的结果:

结果验证了以上的思路。
因此,this的用法也就是 函数中的this指向调用这个函数的owner,也就是运行该函数的对象