<you don't know JS> 上卷笔记二 (this)

this关键词是JavaScript之中最复杂的机制之一。

关于 this

和词法作用域的机制不同,this的指向是“动态”的,它是函数在调用时执行的绑定,指向什么决定于函数在哪里调用

全面解析

归纳总结为4条:

  1. 使用new调用时,绑定到新创建的对象。
  2. call()或者apply()(以及bind())方法调用时,绑定到指定的对象。
  3. 作为对象的方法调用时,指向该对象本身。
  4. 默认情况:绑定到Window对象,在严格模式下绑定到undefine.

ES6 箭头函数中的 this

其实也并不复杂,只是在一个用词法作用域定义函数的语言里面又使用了“动态”让人感到些许困惑...
所以在ES6之的箭头函数使用了与之前函数不同的机制:
函数体内的this对象就是函数定义时所在对象,不是函数使用时所在的上下文环境。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容