函数中this对象的取值,是在函数被调用执行的时候确定的。(函数调用时会产生执行上下文环境)
分为以下五种情况:
1. 函数是构造函数
this代表将要创建的对象。
注意:如果将构造函数当做函数调用,则this==window。
2. 函数作为对象的属性
如果函数作为对象的一个属性,并且作为该对象的属性被调用时。函数中的this代表该对象。
注意:如果该函数被赋值给一个变量,则this==window。
3 .函数用call()或apply()调用
this的值为传入对象的值。
4. this在全局环境下
this==window
5. 普通函数
普通函数调用时,this==window。
6.函数存在于原型对象的方法中
this代表当前对象的值。