第一章 关于this

1.关于this

1.1  为什么要用this

this 提供了一种更优雅的方式来隐式“传递”一个对象的引用。可以将API变得更简洁复用

1.2 误解

1.指向自身

    从对象内部引用自身,法一:需要通过一个指向函数对象的词法标识符(变量)来引用它。
  1. function foo(){
  2.    foo.count = 4;// foo指向自身
  3. }
  4. setTimeout(function(){
  5.    // 匿名函数 无法指向自身
  6. },10);
唯一一种可以让匿名函数指向自身的方法是arguements.callee,已被批判和弃用,不该再使用它。
法二:强制this指向foo函数
foo.call(foo,i);
 

2.它的作用域

this在任何情况下都不指向函数的词法作用域。

1.3 this到底是什么

this是在运行时绑定的,并不是在编写时绑定的,几步指向自身也不指向函数的词法作用域。它指向完全取决于函数在哪里调用
 





posted @ 2017-03-02 09:16  夏目233  阅读(93)  评论(0编辑  收藏  举报