this指针在不同情况下的指代

 说不同情况了吧,首先要分有几种情况使用this,然后再说分别指代什么

1)如果是一般标签下函数调用,this指代全局对象,也就是window对象或者document对象


2)如果在嵌套函数中被嵌套的函数调用,this是指代未定义,是没有意义的


3)如果在对象的方法中调用,this指代对象本身;


4)如果是在构造函数中调用,this指代构造函数的实例;


5)this不能赋值或者修改。
 
 
 大多数我们使用都是对象的方法,因此是指代对象(元素)本身
另外要注意,方法嵌套中this会在不同层面指代不一样
明晰this的不同指向是封装对象的重点之一
原文地址:https://www.cnblogs.com/roves/p/4566075.html