JavaScript系列教程:深入解析this关键字究竟指什么?
- 内容介绍
- 文章标签
- 相关推荐
本文共计3267个文字,预计阅读时间需要14分钟。
理解this,也让你在其他面向对象编程语言中看到this,就知道它通常指向某个构造器(constructor)所创建的对象。但在JavaScript中,this代表的仅是当前正在被创建的对象。
了解this
也许你在其他面向对象的编程语言曾经看过this,也知道它会指向某个构造器(constructor)所建立的对象。但事实上在JavaScript里面,this所代表的不仅仅是那个被建立的对象。
先来看看ECMAScript 标准规范对this 的定义:
「The this keyword evaluates to the value of the ThisBinding of the current execution context.」
「this 这个关键字代表的值为当前执行上下文的ThisBinding。」
然后再来看看MDN 对this 的定义:
「In most cases, the value of this is determined by how a function is called.」
「在大多数的情况下,this 其值取决于函数的调用方式。」
好,如果上面两行就看得懂的话那么就不用再往下看了,Congratulations!
… 我想应该不会,至少我光看这两行还是不懂。
本文共计3267个文字,预计阅读时间需要14分钟。
理解this,也让你在其他面向对象编程语言中看到this,就知道它通常指向某个构造器(constructor)所创建的对象。但在JavaScript中,this代表的仅是当前正在被创建的对象。
了解this
也许你在其他面向对象的编程语言曾经看过this,也知道它会指向某个构造器(constructor)所建立的对象。但事实上在JavaScript里面,this所代表的不仅仅是那个被建立的对象。
先来看看ECMAScript 标准规范对this 的定义:
「The this keyword evaluates to the value of the ThisBinding of the current execution context.」
「this 这个关键字代表的值为当前执行上下文的ThisBinding。」
然后再来看看MDN 对this 的定义:
「In most cases, the value of this is determined by how a function is called.」
「在大多数的情况下,this 其值取决于函数的调用方式。」
好,如果上面两行就看得懂的话那么就不用再往下看了,Congratulations!
… 我想应该不会,至少我光看这两行还是不懂。

