一:默认绑定

js中this指向

js中this指向

js中this指向

js中this指向

针对上面的例子,那如何获取到对象obj里的值呢?把指向obj的this放到自执行函数里作为实参调用

js中this指向

js中this指向

 由于闭包的this默认绑定到window对象,但又常常需要访问嵌套函数的this,所以常常在嵌套函数中使用var that = this,然后在闭包中使用that替代this,使用作用域查找的方法来找到嵌套函数的this值

js中this指向

二:隐式绑定

js中this指向

三:隐式丢失this指向

​ 隐式丢失是指被隐式绑定的函数丢失绑定对象,从而默认绑定到window。这种情况容易出错却又常见

js中this指向

js中this指向

js中this指向

js中this指向

js中this指向

js中this指向

四、显示绑定

js中this指向

js中this指向 

 js中this指向

js中this指向

 五、new绑定

js中this指向

js中this指向 

 js中this指向

js中this指向

六、严格模式

 js中this指向

 

js中this指向

补充一下构造函数返回值

js中this指向

js中this指向 

 

 

相关文章: