this的五种情况分析
this执行主体 谁把它执行【和在哪儿创建、在哪儿执行没有必然的关系】
1、函数执行,看方法前面是否有“点“,没有”点“,this指向window【严格模式下是undefined】,有“点”,“点”前面是谁this就指向谁
2、给当前某个元素的事件行为绑定方法,当事件行为触发,方法中的this是当前元素本身【排除attachEvent】
3、构造函数中的this是指当前类的实例
4、箭头函数中没有执行主体,所用到的this都是其所处上下文中的this
5、可以基于Object.prototype上的call/apply/bind去改变this的指向
手写call、bind方法