搞不懂 bind 前面的 this 和后边的 this 各指向的对象.
stackoverflow 上边看到的一段代码...
1
superbear Jun 11, 2014 看不懂可以把this存到一个变量里例如,var _this = this。
|
2
lijsh Jun 11, 2014 两个this都是同一个对象,就是以new调用MyObject时返回的实例对象。
添加事件处理函数时,当前作用域会丢失(即this会指向全局对象),因此这里要把this.onClick绑定回当前的this中。 还有一种会丢失作用域的情况是定时函数,所以如果想保存原来的上下文,同样需要为定时函数添加this绑定。 |
3
exoticknight Jun 11, 2014 很多时候主要是代码运行的环境不一样导致this的指向变了,比如onclick执行的时候不是在你代码运行的时候而是你点击的时候。
|
7
pepsin Jun 11, 2014
尽量避免用
|
8
mcfog Jun 11, 2014
|