-
这一章到底在说什么?
在说this关键字是什么,关于this的误解; -
作者具体说了什么,怎么说的?
- . 为什么要用this?
- 随着使用的模式越来越复杂,显示传递上下文对象会让代码越来越混乱,而this提供了更好的方法
- 关于this的误解
- This被理解为指向函数自身
- 用一段代码解释了this其实并不指向函数自身
- This指向函数的作用域
- 需要明确一点:this任何情况下都不指向函数的词法作用域。
- 下面是一个例子
function foo() {
var a = 2;
this.bar();
}
function bar() {
console.log(this.a);
}
foo();
- This被理解为指向函数自身
- this到底是什么?
- this是在运行时进行绑定的,并不是在编写时绑定,它的上下文取决于使用时的各种条件。
- this的绑定和函数声明的位置没有任何关系,只取决于函数的调用方式。
- . 为什么要用this?
-
这一章跟你有什么关系?
- This可是一个很重要的使用方法,理解学习它有大用。vue、react中也会遇到this指向的问题,这些框架的使用最终都要追到底层this,掌握好底层很重要
-
本章小结:
- 对于那些没有投入时间学习this机制 的js开发者来说,this的绑定一直是一件非常令人困惑的事。this是非常重要的,但是猜测、尝试并出错和盲目的从Stack Overflow上复制和粘贴答案并不能让你真正理解this的机制
- 学习this的第一步是明白this既不指向函数自身也不指向函数的词法作用域。
- This实际上是在函数被调用时发生的绑定,它指向什么完全取决于函数在哪里被调用。
网友评论