this 三句话

1. this 默认是 window
2. 只能通过 .call 、 .apply 来指定 this
3. fn() 等价于 fn.call() ;  obj.fn() 等价于 obj.fn.call(obj) 
 
function fn(){
    console.log(this.length);
}
var obj = {
    length:5,
    method:function(fn){
        arguments[0]();
        fn();
    }
}
obj.method(fn,1)// 2,0
原文地址:https://www.cnblogs.com/zysos2016/p/5890538.html