"this" in JavaScript

2017-02-02  本文已影响0人  ChangYan

题外话:从今天开始保持每周至少两篇技术博客的更新速率……

关于JS中的this,是JS语言核心中最让人难懂的一部分,关于怎样理解这部分内容,我推荐三个资源:《JS语言精粹》,《你不知道的JavaScript》,MDN文档中关于this的说明。

以下简短地总结一下MDN的文档,主要是复习一下。

核心

In most cases, the value of this is determined by how a function is called.

这句话是理解全部内容的核心,this指代的值仅取决于是“怎样被调用的”

全局作用域、函数作用域

在全局作用域中this指向window,但是在strict模式下this是undefined。

函数作用域中,this的值取决于函数是怎么被调用的。

闭包内的this指向window。

apply/call/bind

语法糖,绑定this,不多表

箭头函数

解决了闭包内this指向window的痛点。

上一篇 下一篇

猜你喜欢

热点阅读