说不同情况了吧,首先要分有几种情况使用this,然后再说分别指代什么
1)如果是一般标签下函数调用,this指代全局对象,也就是window对象或者document对象
2)如果在嵌套函数中被嵌套的函数调用,this是指代未定义,是没有意义的
3)如果在对象的方法中调用,this指代对象本身;
4)如果是在构造函数中调用,this指代构造函数的实例;
5)this不能赋值或者修改。
大多数我们使用都是对象的方法,因此是指代对象(元素)本身
另外要注意,方法嵌套中this会在不同层面指代不一样
明晰this的不同指向是封装对象的重点之一
时间: 2024-10-13 19:54:45