JavaScript中this究竟指代什么,其作用和表现有何不同?
- 内容介绍
- 文章标签
- 相关推荐
本文共计3269个文字,预计阅读时间需要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!
… 我想应该不会,至少我光看这两行还是不懂。
本文共计3269个文字,预计阅读时间需要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!
… 我想应该不会,至少我光看这两行还是不懂。

